赞
踩
1.使用vue-cli后src路径找个文件夹创建menu.vue;
注意:
1.数据需要通过父页面传递进来,在模板中会造成数据溢出
模板需要有name属性,调用模板的父页面的组件名称和模板name需一致,才能实现递归。
//menu.vue;
//循环数据;数据menuList通过props传递
{{ list.resourceName}}
//当有子集数据再次使用这个模板,:menuList通过props传递{{list.resourceName}}
.el-menu--collapse span,
.el-menu--collapse i.el-submenu__icon-arrow
{
height: 0;
width: 0;
overflow: hidden;
visibility: hidden;
display: inline-block;
}
export default{
name:'Menu',//模板名称
data(){
return {
}
},
beforeMount(){
},
props:['menuList']
}
2.父页面使用组件;
//template部分
class="el-menu-vertical-demo"
:collapse="isCollapse"
background-color="rgb(73, 80, 96)" //背景颜色:此备注说明用,实际开发需要删除,否则报错
text-color="rgba(255,255,255,0.7)" //字体颜色:此备注说明用,实际开发需要删除,否则报错
unique-opened //只打开一个菜单:此备注说明用,实际开发需要删除,否则报错
>
//script部分
import Menu from './main-components/menu.vue'; //引进菜单模板
import {menudata} from '../data/menu.js'; //菜单数据
export default{
data(){
return {
isCollapse:false,//菜单展开功能
unCollapse:{
width:'220px'
},
collapse:{
width:'50px'
},
unCollapseMain:{
paddingLeft:'220px'
},
collapseMain:{
paddingLeft:'50px'
},
menuList:menudata.obj
}
},
methods:{
toggleClick(){//菜单展开功能
this.isCollapse=!this.isCollapse;
}
},
components:{
Menu//使用菜单组件
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。