课程目标
注:记得要将上回打开的mockjs关闭
1、动态树功能
单个左侧菜单样式
<template>
<el-menu default-active="2" class="el-menu-vertical-demo" background-color="#334157"
text-color="#fff" active-text-color="#ffd04b" :collapse="collapsed">
<div class="logobox">
<img class="logoimg" src="../assets/img/logo.png" alt="">
</div>
<el-submenu index="1">
<template slot="title">
<i class="el-icon-location"></i>
<span>导航一</span>
</template>
<el-menu-item index="1-4-1">
<template slot="title">
<i class="el-icon-location"></i>
<span>选项1</span>
</template>
</el-menu-item>
</el-submenu>
</el-menu>
</template>
改成动态的菜单
1.跟实例一下变量mymenus
2.钩子函数动态加载数据
data() {
return {
collapsed: false,
mymenus:[]//树形菜单
}
},
created() {
// v就是从Vue 总线Bus获取的变量值
this.$root.Bus.$on('collapsed-ly', (v) => {
this.collapsed = v;
});
//动态树形菜单数据
let url = this.axios.urls.SYSTEM_MENU_TREE;
this.axios.post(url, this.ruleForm).then((response) => {
console.log(response);
this.mymenus = response.data.result;
}).catch(function(error) {
console.log(error);
});
},
3、v-for指令循环遍历
<el-submenu index="1" v-for="m in mymenus">
<template slot="title">
<i :class="m.icon"></i>
<span>{
{m.treeNodeName}}</span>
</template>
<el-menu-item index="1-4-1" v-for="m2 in m.children">
<template slot="title"&g