vue侧边栏动态生成下级菜单的方法


Posted in Javascript onSeptember 07, 2018

循环传入的数据去生成下级菜单

<template>
 <div class="headBar">
 <div class="title">
  微商城管理后台
 </div>
 <el-menu
  class="el-menu-headBar"
  mode="horizontal"
  @select="handleSelect"
  background-color="#000000"
  text-color="#fff"
  active-text-color="#ffd04b"
  :unique-opened="true"
  :default-active="onRoutes" router>
  <template v-for="item in items" >
  <template v-if="item.subs" >
   <el-submenu :index="item.index">
   <template slot="title" >
    {{item.title}}
   </template>
   <el-menu-item v-for="(subItem,i) in item.subs" :key="i" :index="subItem.index">
    {{ subItem.title }}
   </el-menu-item>
   </el-submenu>
  </template>
  <template v-else>
   <el-menu-item :index="item.index">
   <label>{{ item.title }}</label>
   </el-menu-item>
  </template>
  </template>
 </el-menu>
 </div>
</template>
 
<script>
 export default {
 data() {
  return {
  activeIndex: "1",
  items: [
   {
   icon: 'el-icon-menu',
   index: '1',
   title: '数据统计',
   subs: [
    {
    index: '/monitor',
    title: '客流展示'
    },
    {
    index: '/monitor/device',
    title: '设备采集'
    },
    {
    index: '/monitor/tv',
    title: '监控视频'
    }
   ]
   },{
   icon: 'el-icon-goods',
   index: '/product',
   title: '商品管理',
   },{
   icon: 'el-icon-goods',
   index: '/category',
   title: '类目管理',
   },{
   icon: 'fa fa-cart-arrow-down',
   index: '/order',
   title: '订单一览'
   },{
   icon: 'fa fa-user-o',
   index: '/merchant',
   title: '商家信息'
   },{
   icon: 'el-icon-printer',
   index: '9',
   title: '微商城',
   subs:[
    {
    icon: 'el-icon-printer',
    index: '/banner',
    title: 'banner设置'
    },{
    icon: 'el-icon-printer',
    index: '/decoration',
    title: '首页装修'
    },{
    icon: 'el-icon-printer',
    index: '/message',
    title: '消息设置'
    }
   ]
   },{
   icon: 'el-icon-printer',
   index: '10',
   title: '线下店',
   subs:[
    {
    icon: 'el-icon-printer',
    index: '/device',
    title: '设备管理'
    },{
    icon: 'el-icon-printer',
    index: '/advertise',
    title: '广告管理'
    },{
    icon: 'el-icon-printer',
    index: '/version',
    title: '版本管理'
    }
   ]
   },{
   icon: 'el-icon-printer',
   index: '/largeUI',
   title: '大屏'
   },{
   icon: 'el-icon-printer',
   index: '/coupon',
   title: '优惠券'
   }
  ],
  }
 },
 methods: {
  handleSelect(key, keyPath) {
  console.log(key, keyPath);
  }
 },
 computed:{
  onRoutes(){
  return this.$route.path.replace('/','');
  }
 }
 }
</script>
 
<style scoped>
 .el-menu-headBar {
 width: 80%;
 min-width: 950px;
 font-size: 12px;
 border-bottom: 1px #000000;
 }
 
 .headBar {
 width: 100%;
 height: 50px;
 display: flex;
 background-color: #000000;
 }
 
 .title {
 background-color: #ffdb15;
 color: #000;
 height: 100%;
 min-width: 200px;
 width: 200px;
 display: flex;
 justify-content: center;
 align-items: center;
 letter-spacing: 5px;
 font-size: 17px;
 }
</style>

以上这篇vue侧边栏动态生成下级菜单的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS的递增/递减运算符和带操作的赋值运算符的等价式
Dec 08 Javascript
Ext第一周 史上最强学习笔记---GridPanel(基础篇)
Dec 29 Javascript
用JQuery 实现AJAX加载XML并解析的脚本
Jul 25 Javascript
jquery拖动插件(jquery.drag)使用介绍
Jun 18 Javascript
简单的JavaScript互斥锁分享
Feb 02 Javascript
Javascript BOM学习小结(六)
Nov 26 Javascript
基于JS代码实现实时显示系统时间
Jun 16 Javascript
JavaScript模块模式实例详解
Oct 25 Javascript
JS实现的汉字与Unicode码相互转化功能分析
May 25 Javascript
如何在JavaScript中创建具有多个空格的字符串?
Feb 23 Javascript
uniapp微信小程序实现一个页面多个倒计时
Nov 01 Javascript
jQuery实现本地存储
Dec 22 jQuery
Vuejs开发环境搭建及热更新【推荐】
Sep 07 #Javascript
小程序点赞收藏功能的实现代码示例
Sep 07 #Javascript
前端防止用户重复提交js实现代码示例
Sep 07 #Javascript
vue实现打印功能的两种方法
Sep 07 #Javascript
使用Angular-CLI构建NPM包的方法
Sep 07 #Javascript
详解如何构建一个Angular6的第三方npm包
Sep 07 #Javascript
vue2.0 可折叠列表 v-for循环展示的实例
Sep 07 #Javascript
You might like
基于mysql的论坛(1)
2006/10/09 PHP
php猜单词游戏
2015/09/29 PHP
php安装dblib扩展,连接mssql的具体步骤
2017/03/02 PHP
PHP基于正则批量替换Img中src内容实现获取缩略图的功能示例
2017/06/07 PHP
Yii框架操作cookie与session的方法实例详解
2019/09/04 PHP
关于PHP求解三数之和问题详析
2020/11/09 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
一个加载js文件的小脚本
2007/06/28 Javascript
JQuery Study Notes 学习笔记(一)
2010/08/04 Javascript
基于Jquery的简单图片切换效果
2011/01/06 Javascript
三种动态加载js的jquery实例代码另附去除js方法
2014/04/30 Javascript
jquery实现简洁文件上传表单样式
2015/11/02 Javascript
实例讲解jQuery EasyUI tree中state属性慎用
2016/04/01 Javascript
jQuery插件ajaxFileUpload使用实例解析
2016/10/19 Javascript
Angularjs根据json文件动态生成路由状态的实现方法
2017/04/17 Javascript
JavaScript注册时密码强度校验代码
2017/06/30 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
Vue2 配置 Axios api 接口调用文件的方法
2017/11/13 Javascript
vue中tab选项卡的实现思路
2018/11/25 Javascript
如何在vue项目中嵌入jsp页面的方法(2种)
2020/02/06 Javascript
Vue +WebSocket + WaveSurferJS 实现H5聊天对话交互的实例
2020/11/18 Vue.js
Python Deque 模块使用详解
2014/07/04 Python
Python网络爬虫实例讲解
2016/04/28 Python
Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】
2017/07/11 Python
Python脚本修改阿里云的访问控制列表的方法
2019/03/08 Python
Python如何批量获取文件夹的大小并保存
2020/03/31 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
2020/04/08 Python
解决matplotlib.pyplot在Jupyter notebook中不显示图像问题
2020/04/22 Python
Python下使用Trackbar实现绘图板
2020/10/27 Python
Foot Locker澳洲官网:美国运动服和鞋类零售商
2019/10/11 全球购物
实习生自荐信范文分享
2013/11/27 职场文书
学校食品安全实施方案
2014/06/14 职场文书
感情真挚的毕业生求职信
2014/07/19 职场文书
入党积极分子党支部意见
2015/06/02 职场文书
2019年特色火锅店的创业计划书模板
2019/08/28 职场文书
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server