element 中NavMenu 导航菜单 的使用

<div class="menu_content">
      <el-menu :default-active="active" :unique-opened="true">
        <template v-for="item in menuData">
          <!-- 存在子菜单 -->
          <el-submenu
            v-if="item.children"
            :key="item.index"
            :index="item.index"
          >
            <template slot="title">
              <img class="menuIcon" :src="item.icon" />{{ item.name }}
            </template>
            <el-menu-item
              v-for="(cItem, index) in item.children"
              :key="index"
              :index="cItem.index"
              @click="toPage(cItem.index, cItem.name)"
              >&nbsp;&nbsp;{{ cItem.name }}
            </el-menu-item>
          </el-submenu>
          <!-- 不存在子菜单 -->
          <el-menu-item
            :key="item.index"
            :index="item.index"
            v-if="!item.children"
            @click="toPage(item.index, item.name)"
          >
            <img class="menuIcon" :src="item.icon" />
            {{ item.name }}
          </el-menu-item>
        </template>
      </el-menu>
    </div>




      menuData: [
        {
          index: "homePage",
          name: "地图首页",
          flag: true,
          icon: require("@/assets/menu/icon_homePage.png"),
        },
        {
          index: "device",
          name: "数据监控",
          flag: true,

          icon: require("@/assets/menu/icon_device.png"),
        },

        {
          index: "report",
          name: "报表中心",
          flag: true,
          icon: require("@/assets/menu/icon_monitor.png"),
        },
        {
          index: "dataQuery",
          name: "数据分析",
          flag: true,

          icon: require("@/assets/menu/icon_data.png"),
        },
        {
          index: "warn",
          name: "告警管理",
          flag: true,

          icon: require("@/assets/menu/icon_warn.png"),
          children: [
            { index: "warnRecord", name: "告警记录" },
            { index: "warnSetting", name: "告警配置" },
          ],
        },
        {
          index: "workordermanagement",
          name: "工单管理",
          flag: true,
          icon: require("@/assets/menu/workorder.png"),
        },
        {
          index: "linkageservice",
          name: "联动服务",
          flag: true,
          icon: require("@/assets/menu/linkageservice.png"),
        },
        {
          index: "operationplatform",
          name: "远程运维",
          flag: true,
          icon: require("@/assets/menu/icon_policing.png"),
        },
        {
          index: "base",
          name: "知识库",
          flag: true,

          icon: require("@/assets/menu/icon_system.png"),
        },
        {
          index: "platformconfiguration",
          name: "平台配置",
          flag: true,
          icon: require("@/assets/menu/icon_userInfo.png"),
          children: [
            { index: "deviceInfo", name: "测点管理" },
            { index: "userInfo", name: "用户管理" },
          ],
        },

        // {
        //   index: "deviceInfo",
        //   name: "测点管理",
        //   flag: true,

        //   icon: require("@/assets/menu/icon_deviceInfo.png"),
        // },
        // {
        //   index: "userInfo",
        //   name: "用户管理",
        //   flag: true,
        //   icon: require("@/assets/menu/icon_userInfo.png"),
        // },
      ],

注意的几个细节:

存在子菜单的使用外面使用一层submenu

不存在子菜单的直接使用<el-menu-item></el-menu-item>

:default-active="active" 这个属性是刷新浏览器进来的时候进入的menu的菜单,与el-menu-item的 :key 相关,注意不会与el-submenu的 :key相关,

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值