elementui 可伸缩侧边栏_Vue 组件库Element布局容器动态生成侧边栏。

本文展示了如何在Vue 2.0中使用ElementUI创建可伸缩的侧边栏,内容根据动态数据生成。通过组件复用,实现了菜单项的动态添加和删除,并确保路由变化时侧边栏同步更新。详细介绍了组件结构、数据处理以及路由监听等关键实现步骤。
摘要由CSDN通过智能技术生成

为了让大家可以继续看下去,代码展示效果我先给出来

https://htmlzhoyan.github.io/ElementUi/#/ele/elc/%E6%9D%83%E9%99%90%E7%AE%A1%E7%90%86

我这里要实现 Vue 2.0 的桌面端组件库Element中的侧边栏内容动态生成,换句话说,我并不知道侧边栏菜单里会有多少个子选项,所以我这样设计

目录结构如下:

5c37017c9224?open_source=weibo_search

vue布局

我这边使用了组件里面再次调用组件的方法。

所以 我这样先声明个组件 eleTemplate.vue

export default {

name: 'NavMenu',

props: ['navMenus'],

data() {

return {}

},

methods: {}

}

a{

text-decoration:none

}

然后我在父组件里调用它,这里我使用了router-view来展示子路由里的页面效果,同时我为了实现路由进来的时候去触发侧边栏的指向,我在el-menu里添加了default-active

:default-active="isId"

@select="handleSelect"

class="el-menu-vertical-demo"

background-color="#F0F6F6"

text-color="#3C3F41"

active-text-color="#f60">

import config from './config'

import NavMenu from './eleTemplate';

export default {

data() {

return{

totalList:[],

isId:"权限管理"

}

},

methods: {

handleSelect(key,keyPath){

console.log(key,keyPath)

}

},

components: {

NavMenu

},

beforeRouteEnter (to, from, next) {

console.log("我从哪里来",to.params.id,from)

var self = this

next(vm=>{

vm.isId = to.params.id

})

},

watch:{

$route(to,from){

this.isId = to.params.id

}

},

created(){

this.totalList = config.childs

},

}

其中 我为了模拟数据,引入config

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值