vue+element UI 实现无限极分类(二)

本文记录了一次使用Vue和Element UI实现无限级分类功能的项目经验,详细描述了如何动态添加el-submenu和el-menu-item,并强调了数据结构和代码逻辑的复杂性。
摘要由CSDN通过智能技术生成

这是自己项目的经历,真是很复杂!!!大概记录一下代码的逻辑

可以无限添加el-submenu 和el-menu-item

< template >
< div class= 'leftList' style= ' overflow:auto' >
< el-aside width= "99%" style= "background-color:#2c3e50;" >
< div id= 'leftAside' >
< el-menu
:default-active=" menuActive"
class= "el-menu-vertical-demo"
@open=" handleOpen"
@close=" handleClose"
:default-openeds=" cacheMenu"
background-color= "#2C3E50"
text-color= "#fff"
active-text-color= "#ffd04b" >
< el-submenu index= "1" >
< template slot= "title" >
< i class= "el-icon-location" ></ i >
< span >Account </ span >
</ template >
< el-menu-item index= "1-1" >
< i class= "el-icon-tickets" ></ i >
< span v-on:click=" getuserinfo" >User Profiles </ span >
</ el-menu-item >
</ el-submenu >
< el-submenu index= "2"
@click.stop.native=" selectmanage( '2', 'Device Management', '2')" >
< template slot= "title" >
< i class= "el-icon-setting" ></ i >
< span slot= "title" :style="{ color: 'a' === templateActive? '#ffd04b': '#fff'}" >Device Management </ span >
</ template >
< Menus :listData=" list" :indexM=" '2'" />
</ el-submenu >
< el-submenu index= "3" >
< template slot= "title" >
< i class= "el-icon-setting" ></ i >
< span slot= "title" >Device Monitor </ span >
</ template >
< el-menu-item index= "3-1" >
< i class= "el-icon-tickets" ></ i >
< span >Online Library </ span >
</ el-menu-item >
</ el-submenu >
< el-submenu index= "4" >
< template slot= "title" >
< i class= "el-icon-setting" ></ i >
< span slot= "title" >System Setting </ span >
</ template >
< el-menu-item index= "4-1" >
< i class= "el-icon-tickets" ></ i >
< span >Template Library </ span >
</ el-menu-item >
< el-menu-item index= "4-2" >
< i class= "el-icon-tickets" ></ i >
< span >Customize </ span >
</ el-menu-item >
< el-menu-item index= "4-3" >
< i class= "el-icon-question" ></ i >
< span >Help </ span >
</ el-menu-item >
< el-menu-item index= "4-4" >
< i class= "el-icon-info" ></ i >
< span >Version </ span >
</ el-menu-item >
</ el-submenu >
</ el-menu >

</ div >
</ el-aside >
</ div >
</ template >

< script >
import bus from '@/assets/js/bus.js'
import Menus from '@/components/component/menus.vue'
import axios from 'axios'
export default {
props:[ 'dataname', 'data'],
components:{
Menus
},
data () {
return {
a: true,
defaultProps: {
children: 'Children',
label: 'Name',
logo: 'Logo'
}
}
},
computed:{
menuActive(){
return this.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值