出现的问题:基于Vue2.x版本enlement-ui NavMenu组件由后端返回数据渲染,需进行循环,折叠属性失效了
解决:使用fragment
1.npm安装
npm i vue-fragment -s-d
2.main.js 全局引入注册
import Fragment from 'vue-fragment';
Vue.use(Fragment.Plugin);
3.Nav.vue使用
<fragment v-for="item in navList" :key="item.id">
<el-menu-item :index="item.default_url" v-if="item.child.length === 0">
.......
</el-menu-item>
<el-submenu v-if="item.child.length > 0" :index="item.default_url">
<template slot="title">
......
</template>
<el-menu-item-group>
......
<el-menu-item v-for="it in item.child" :key="it.id" :index="it.default_url">
......
</el-menu-item>
</el-menu-item-group>
</el-submenu>
</fragment>