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 相关文章推荐
jQuery ajax 路由和过滤器使用说明
Aug 02 Javascript
JavaScript面向对象程序设计三 原型模式(上)
Dec 21 Javascript
JQuery实现简单时尚快捷的气泡提示插件
Dec 20 Javascript
JavaScript 实现简单的倒计时弹窗DEMO附图
Mar 05 Javascript
jQuery基础的工厂函数以及定时器的经典实例分析
May 20 Javascript
jQuery实现标签页效果实战(4)
Feb 08 Javascript
让div运动起来 js实现缓动效果
Jul 06 Javascript
Three.js如何实现雾化效果示例代码
Sep 27 Javascript
360doc网站不登录就无法复制内容的解决方法
Jan 27 Javascript
Vue项目安装插件并保存
Jan 28 Javascript
微信小程序canvas绘制圆角base64图片的实现
Aug 18 Javascript
Layui弹框中数据表格中可双击选择一条数据的实现
May 06 Javascript
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
网络资源
2006/10/09 PHP
如何使用Linux的Crontab定时执行PHP脚本的方法
2011/12/19 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
PHP时间类完整代码实例
2021/02/26 PHP
一行代码告别document.getElementById
2012/06/01 Javascript
Js判断CSS文件加载完毕的具体实现
2014/01/17 Javascript
javascript判断复选框是否选中的方法
2015/10/16 Javascript
javascript动态获取登录时间和在线时长
2016/02/25 Javascript
jquery实现简单的banner轮播效果【实例】
2016/03/30 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
2016/05/25 Javascript
javascript设置文本框光标的方法实例小结
2016/11/04 Javascript
AngularJS基于ui-route实现深层路由的方法【路由嵌套】
2016/12/14 Javascript
Popup弹出框添加数据实现方法
2017/10/27 Javascript
基于js 字符串indexof与search方法的区别(详解)
2017/12/04 Javascript
vue-cli脚手架引入图片的几种方法总结
2018/03/13 Javascript
详解Angular6 热加载配置方案
2018/08/18 Javascript
JavaScript作用域、闭包、对象与原型链概念及用法实例总结
2018/08/20 Javascript
JS获取本地地址及天气的方法实例小结
2019/05/10 Javascript
JS代码屏蔽F12,右键,粘贴,复制,剪切,选中,操作实例
2019/09/17 Javascript
vue-cli在 history模式下的配置详解
2019/11/26 Javascript
详解JavaScript作用域、作用域链和闭包的用法
2020/09/03 Javascript
Python语言技巧之三元运算符使用介绍
2013/03/04 Python
Python3多进程 multiprocessing 模块实例详解
2018/06/11 Python
Python迭代器协议及for循环工作机制详解
2020/07/14 Python
俄罗斯宠物用品网上商店:ZooMag
2019/12/12 全球购物
AJAX都有哪些有点和缺点
2012/11/03 面试题
化工工艺专业求职信
2013/09/22 职场文书
入党转预备思想汇报
2014/01/07 职场文书
教师个人剖析材料
2014/02/05 职场文书
《走一步再走一步》教学反思
2014/02/15 职场文书
大学本科生职业生涯规划书范文
2014/09/14 职场文书
领导干部遵守党的政治纪律情况思想汇报
2014/09/14 职场文书
幼儿园新学期开学寄语
2015/05/27 职场文书
践行三严三实心得体会(2016推荐篇)
2016/01/06 职场文书
化工生产实习心得体会
2016/01/22 职场文书
2019军训心得体会
2019/06/27 职场文书