vue导航栏部分的动态渲染实例


Posted in Javascript onNovember 01, 2019

根据公司项目的需求,使用的是element-ui的nav-menu组件实现动态渲染左侧导航条的功能,这里我只写到了四级菜单。

代码部分:

<el-menu class='el-menu-vertical-demo' :router='true' v-for='(item, index) in navMenu' :key='index'>
  <el-submenu v-if='item.childs' :index='item.name' :route = 'item.value' class='edit_wrapper' @mouseover.native="overShow" @mouseout.native="outHide">
  <template slot='title'>
   <i :class='item.icon'></i>
   <span slot='title'>{{item.alias}}</span>
   <i class='iconfont icon-shenpi edit' v-show='haha'></i>
  </template>
  <el-submenu v-if='item1.childs' v-for= '(item1, index) in item.childs' :key='item1.name' :index='item1.name' :route='item1.value'>
   <template slot='title'>
   <i :class='item1.icon'></i>
   <span slot='title'>{{item1.alias}}</span>
   </template>
   <el-submenu v-for= '(item2, index) in item1.childs' :key='item2.name' v-if='item2.childs' :index='item2.name' :route = 'item2.value'>
   <template slot='title'>
    <i :class='item2.icon'></i>
    <span slot='title'>{{item2.alias}}</span>
   </template>
   <el-submenu v-for= '(item3, index) in item2.childs' :key='item3.name' v-if='item3.childs' ::index='item3.name' :route = 'item3.value'>
    <template slot='title'>
    <i :class='item3.icon'></i>
    <span slot='title'>{{item3.alias}}</span>
    </template>
    <el-menu-item v-for= '(item4, index) in item3.childs' :key='item3.name' v-if='item4.childs == null' :index='item4.name' :route = 'item4.value'>
    <span>{{item4.alias}}</span>
    </el-menu-item>
   </el-submenu>
   <el-menu-item v-for= '(item3, index) in item2.childs' :key='item3.name' v-if='item3.childs == null' :index='item3.name' :route = 'item3.value'>
    <span>{{item3.alias}}</span>
   </el-menu-item>
   </el-submenu>
   <el-menu-item v-for= '(item2, index) in item1.childs' :key='item2.name' v-if='item2.childs == null' :index='item2.name' :route = 'item2.value'>
   <span>{{item2.alias}}</span>
   </el-menu-item>
  </el-submenu>
  <el-menu-item v-for= '(item1, index) in item.childs' :key='item1.name' v-if='item1.childs == null' :index='item1.name' :route = 'item1.value'>
   <span>{{item1.alias}}</span>
  </el-menu-item>
  </el-submenu>
  <el-menu-item v-if='item.childs == null' :index='item.name' :route = 'item.value'>
  <i :class='item.icon'></i>
  <span slot='title'>{{item.alias}}</span>
  </el-menu-item>
  </el-menu>

数据部分:

navMenu: [{
  name: 'serveList',
  icon: 'iconfont icon-shezhi',
  alias: '金融服务目录',
  value: '',
  childs: [
  {
  name: 'channelManage',
  icon: '',
  alias: '渠道管理',
  value: '',
  childs: [
  {
   name: 'channelManage_in',
   icon: '',
   alias: '渠道内部管理',
   value: '',
   childs: [
   {
   name: 'financial',
   icon: '',
   alias: '金融类',
   value: '/serveManage/financial',
   },
   {
   name: 'no_financial',
   icon: '',
   alias: '非金融类',
   value: '/serveManage/no_financial',
   },
   {
   name: 'query_class',
   icon: '',
   alias: '查询类',
   value: '/serveManage/query_class',
   },
   {
   name: 'square_class',
   icon: '',
   alias: '冲正类',
   value: '/serveManage/square_class',
   },
   ]
  },
  {
   name: 'process_services',
   icon: '',
   alias: '流程服务',
   value: '/serveManage/process_services'
  },
  {
   name: 'cooperation_services',
   icon: '',
   alias: '合作方服务',
   value: '/serveManage/cooperation_services'
  },
  ]
  },
  {
  name: 'saveManage',
  icon: '',
  alias: '风险管理',
  value: '/serveManage/saveManage'
  }, {
  name: 'manageDecision',
  icon: '',
  alias: '管理决策',
  value: '/serveManage/manageDecision'
  }, {
  name: 'businessSupport',
  icon: '',
  alias: '业务支持',
  value: '/serveManage/businessSupport'
  }, {
  name: 'technicalSupport',
  icon: '',
  alias: '技术支持',
  value: '/serveManage/technicalSupport'
  }
  ]
 }, {
  name: 'serveRelation',
  icon: 'iconfont icon-shezhi',
  alias: '服务血缘关系',
  value: '/serveManage/serveRelation'
 }]

注意:因为含有childs的目录是没有路由的,所以可以把它的value值设为空。

效果展示:

vue导航栏部分的动态渲染实例

这样我们就可以在其他页面引入该组件就可以了。

以上这篇vue导航栏部分的动态渲染实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js停止输出代码
Jul 20 Javascript
Javascript 跨域访问解决方案
Feb 14 Javascript
javascript 时间比较实现代码
Oct 28 Javascript
关于二级域名下使用一级域名下的COOKIE的问题
Nov 07 Javascript
JQuery获取与设置HTML元素的内容或文本的实现代码
Jun 20 Javascript
文件上传插件SWFUpload的使用指南
Nov 29 Javascript
angular.js指令中transclude选项及ng-transclude指令详解
May 24 Javascript
JS实现的加减乘除四则运算计算器示例
Aug 09 Javascript
layui加载表格,绑定新增,编辑删除,查看按钮事件的例子
Sep 06 Javascript
在vue中使用vuex,修改state的值示例
Nov 08 Javascript
如何在面试中手写出javascript节流和防抖函数
Oct 22 Javascript
JavaScript中document.activeELement焦点元素介绍
Nov 27 Javascript
微信小程序自定义tabbar custom-tab-bar 6s出不来解决方案(cover-view不兼容)
Nov 01 #Javascript
Vue-cli项目部署到Nginx服务器的方法
Nov 01 #Javascript
浅谈vue-router路由切换 组件重用挖下的坑
Nov 01 #Javascript
浅析js实现网页截图的两种方式
Nov 01 #Javascript
javascript使用链接跨域下载图片
Nov 01 #Javascript
async/await让异步操作同步执行的方法详解
Nov 01 #Javascript
浅谈Three.js截图并下载的大坑
Nov 01 #Javascript
You might like
Ajax PHP简单入门教程代码
2008/04/25 PHP
PHP二维数组的去重问题解析
2011/07/17 PHP
解析php防止form重复提交的方法
2013/07/01 PHP
运用Windows XP附带的Msicuu.exe、Msizap.exe来彻底卸载顽固程序
2007/04/21 Javascript
js 分栏效果实现代码
2009/08/29 Javascript
js函数与php函数的区别实例浅析
2015/01/12 Javascript
jquery超简单实现手风琴效果的方法
2015/06/05 Javascript
jquery解析json格式数据的方法(对象、字符串)
2015/11/24 Javascript
JS小数运算出现多为小数问题的解决方法
2016/06/02 Javascript
基于Bootstrap仿淘宝分页控件实现代码
2016/11/07 Javascript
微信小程序五星评分效果实现代码
2017/04/06 Javascript
Vue AST源码解析第一篇
2017/07/19 Javascript
原生js jquery ajax请求以及jsonp的调用方法
2017/08/04 jQuery
Node.js  事件循环详解及实例
2017/08/06 Javascript
vueScroll实现移动端下拉刷新、上拉加载
2019/03/22 Javascript
微信小程序HTTP接口请求封装代码实例
2019/09/05 Javascript
[03:56]还原FTP电影首映式 DOTA2群星拼出遗迹世界
2014/03/26 DOTA
[48:41]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
关于Python中空格字符串处理的技巧总结
2017/08/10 Python
Python给你的头像加上圣诞帽
2018/01/04 Python
python 获取list特定元素下标的实例讲解
2018/04/09 Python
TensorFlow实现随机训练和批量训练的方法
2018/04/28 Python
用Python PIL实现几个简单的图片特效
2019/01/18 Python
使用python socket分发大文件的实现方法
2019/07/08 Python
python IDLE添加行号显示教程
2020/04/25 Python
Django缓存Cache使用详解
2020/11/30 Python
selenium设置浏览器为headless无头模式(Chrome和Firefox)
2021/01/08 Python
品恩科技软件测试面试题
2014/10/26 面试题
教师实习自我鉴定
2013/12/18 职场文书
热爱祖国的演讲稿
2014/05/04 职场文书
销售提升方案
2014/06/07 职场文书
领导干部四风问题自我剖析材料
2014/09/25 职场文书
资源环境与城乡规划管理专业自荐书
2014/09/26 职场文书
2015感人爱情寄语
2015/02/26 职场文书
2016年春节问候语
2015/11/11 职场文书
不会写演讲稿,快来看看这篇文章!
2019/08/06 职场文书