//html部分
<el-menu background-color="#3f4d67" text-color="#fff" :default-active="$route.path" :unique-opened="true" :router="true" mode="vertical" >
<template v-for="item in menu">
<!-- 多级菜单外壳 -->
<el-submenu v-if="item.children.length !== 0" :index="item.menuEnName" :key="item.menuEnName">
<!-- 一级菜单包裹层 -->
<template slot="title">
<i :class="item.icon"></i>
<span slot="title">{{langType === 'en'? item.name_en: item.menuName}}</span>
</template>
<!-- 二级菜单选项 -->
<el-menu-item v-for="child in item.children" :index="child.menuEnName" :key="child.menuEnName">
<i class="fa fa-long-arrow-right"></i>
<span slot="title">{{langType === 'en'? child.name_en: child.menuName}}</span>
</el-menu-item>
</el-submenu>
<!-- 单级菜单 -->
<el-menu-item v-else :index="item.menuEnName" :key="item.menuEnName">
<i :class="item.icon"></i>
<span slot="title">{{langType === 'en'? item.name_en: item.menuName}}</span>
</el-menu-item>
</template>
</el-menu>
data () {
return {
menu:JSON.parse(
localStorage.getItem("loginInfo")
).menuInfoTree, //从登录获取的导航树
defaultProps: { //默认渲染的 接口获取的 导航树 与 导航插件属性对应
children: 'children',
label: 'menuName'
}
}
},