Create menu component:
<template>
<div>
<Menu @on-select='tabopen'>
<MenuItems :menu='menu'></MenuItems>
</Menu>
</div>
</template>
<script>
import MenuItems from './menuItem'
export default {
name:'Menus',
props:{
menu:{
type:Array,
require:true
}
},
components:{
MenuItems
},
methods:{
tabopen(e){
this.$emit('on-select',e)
}
}
}
</script>
Create menuitem component:
<template>
<span>
<Submenu :name="item.name" v-for="(item,index) in menu" :key="index">
<template slot="title">
<Icon type="ios-paper" />
{{item.title}}
</template>
<span v-for="(val,key) in item.children" :key="key" >
<MenuItem :name="val.name">{{val.title}}</MenuItem>
<my-tree v-if="val.children" :menu='val.children'></my-tree>
</span>
</Submenu>
</span>
</template>
<script>
export default {
name: "myTree",
props:{
menu:{
type:Array,
require:true
}
}
}
</script>
Call component:
<Menus :menu="menu" @on-select='operation' />
menu:[
{
name:'1',
title:'Content Management',
children:[{
title:'Article Management',
name:'1-1'
}]
},
{
name:'2',
title:'User Management',
children:[{
name:'2-1',
title:'Add User',
children:[{
title:'test',
name:'2-1-1',
children:[
{
name:'2-1-1',
title:'lininn'
}
]
}]
},
title:'Active Users',
name:'2-2',
}
]
}
]
暂无评论。