vue 动态菜单 水平菜单

nav-menu组件

<template v-for="navMenu in navMenus">
  <!-- 最后一级菜单 -->
  <el-menu-item v-if="!navMenu.childs&&navMenu.entity"
                :key="navMenu.entity.id" :data="navMenu" :index="navMenu.entity.name" 
               >
    <span slot="title">{{navMenu.entity.alias}}</span>
  </el-menu-item>

  <!-- 此菜单下还有子菜单 -->
  <el-submenu v-if="navMenu.childs&&navMenu.entity"
              :key="navMenu.entity.id" :data="navMenu" :index="navMenu.entity.name">
    <template slot="title">
      <span> {{navMenu.entity.alias}}</span>
    </template>
    <!-- 递归 -->
    <NavMenu :navMenus="navMenu.childs"></NavMenu>
  </el-submenu>       
</template>

在这里插入代码片

引用nav-menu

<template>
  <div class="">
    <el-menu
      mode="horizontal"
      :default-active="activeIndex"
      router
    >
      <NavMenu :navMenus="menuData"></NavMenu>
    </el-menu>
  </div>
</template>
<script>
export default {
   data(){
     return{
      activeIndex: '/',
      menuData: [
        {
          entity: {
            id: 1,
            name: "overview",
            alias: "首页",
            path:"overview"
          }
        },
        {
          entity: {
            id: 2,
            name: "training",
            alias: "引导页",
          },
          childs: [
            {
              entity: {
                id: 9,
                name: "training-list",
                alias: "12",
                path:"training-list"
              }
            }
          ]
        }
      ]
    }
   }
}	
mounted(){
	let start = window.location.href.lastIndexOf('/');
    let path = window.location.href.slice(start+1);
    this.activeIndex = path;
    this.getAdminInfo();
}
</script>

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值