vue2.0使用v-for循环制作多级嵌套菜单栏


Posted in Javascript onJune 25, 2018

使用v-for循环生成一个多级嵌套菜单栏,只要你学会了这个方法,几乎所有的菜单栏都可以实现了。

方法

<div class="level-one" v-if="obj.level == 1" v-for="obj in bar1"><a>{{obj.title}}</a> 
 <div class="level-two" v-if="obj1.parentId == obj.id " v-for="obj1 in bar1"><a>{{obj1.title}}</a> 
  <div class="level-three" v-if="obj2.parentId == obj1.id" v-for="obj2 in bar1"><a>{{obj2.title}}</a></div> 
 </div> 
</div> 

level-one{ 
 text-indent: 1em; 
} 
level-two{ 
 text-indent: 2em; 
} 
level-three{ 
 text-indent: 3em; 
} 

bar1:[ 
 /*所有第一级菜单*/ 
 { 
  title:'一级菜单(1)', 
  id:1,       //选项的唯一ID 
  parentId:0,    //父级的ID 
  level:1      //所处的层级 
 }, 
 { 
  title:'一级菜单(2)', 
  id:2, 
  parentId:0, 
  level:1 
 }, 
 { 
  title:'一级菜单(3)', 
  id:3, 
  parentId:0, 
  level:1, 
 }, 
 /*所有二级菜单*/ 
 { 
  title:'二级菜单(1.1)', 
  id:4, 
  parentId:1, 
  level:2 
 }, 
 { 
  title:'二级菜单(1.2)', 
  id:5, 
  parentId:1, 
  level:2 
 }, 
 { 
  title:'二级菜单(2.1)', 
  id:6, 
  parentId:2, 
  level:2 
 }, 
 { 
  title:'二级菜单(2.2)', 
  id:7, 
  parentId:2, 
  level:2 
 }, 
 /*所有三级菜单*/ 
 { 
  title:'三级菜单(1.1.1)', 
  id:8, 
  parentId:4, 
  level:3 
 }, 
 { 
  title:'三级菜单(1.1.2)', 
  id:9, 
  parentId:4, 
  level:3 
 } 
]

解释:

1)菜单栏嵌套了多少层,就需要进行多少次v-for循环;

2)通过v-if来选择level=1的选项作为最外层;

3)通过判断选项的parentId等于上一层的id,来确定它是哪个选项的子级菜单;

实现效果

vue2.0使用v-for循环制作多级嵌套菜单栏

总结

以上所述是小编给大家介绍的vue2.0使用v-for循环制作多级嵌套菜单栏,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript String 的扩展方法集合
Jun 01 Javascript
jquery下实现overlay遮罩层代码
Aug 25 Javascript
js Array操作的最简短最容易理解方法
Dec 09 Javascript
node.js中的path.basename方法使用说明
Dec 09 Javascript
jQuery中removeClass()方法用法实例
Jan 05 Javascript
Javascript实现图片轮播效果(二)图片序列节点的控制实现
Feb 17 Javascript
使用vue和datatables进行表格的服务器端分页实例代码
Jun 07 Javascript
微信小程序使用video组件播放视频功能示例【附源码下载】
Dec 08 Javascript
jQuery实现仿京东防抖动菜单效果示例
Jul 06 jQuery
微信小程序实现带缩略图轮播效果
Nov 04 Javascript
JS实现使用POST方式发送请求
Aug 30 Javascript
如何解决jQuery 和其他JS库的冲突
Jun 22 jQuery
浅谈super-vuex使用体验
Jun 25 #Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
Jun 25 #Javascript
使用vue的transition完成滑动过渡的示例代码
Jun 25 #Javascript
JS实现仿微信支付弹窗功能
Jun 25 #Javascript
vue.js 实现输入框动态添加功能
Jun 25 #Javascript
vue-router重定向不刷新问题的解决
Jun 25 #Javascript
JavaScript实现封闭区域布尔运算的示例代码
Jun 25 #Javascript
You might like
用PHP读取RSS feed的代码
2008/08/01 PHP
php 论坛采集程序 模拟登陆,抓取页面 实现代码
2009/07/09 PHP
JS 网站性能优化笔记
2011/05/24 PHP
php加速器eAccelerator的配置参数、API详解
2014/05/05 PHP
PHP格式化MYSQL返回float类型的方法
2016/03/30 PHP
thinkphp3.2.0 setInc方法 源码全面解析
2018/01/29 PHP
php微信开发之谷歌测距
2018/06/14 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
2019/10/20 PHP
jQuery简单实现图片预加载
2015/04/20 Javascript
JavaScript前端开发之实现二进制读写操作
2015/11/04 Javascript
JavaScript文档碎片操作实例分析
2015/12/12 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
JavaScript轮播图简单制作方法
2017/02/20 Javascript
使用JQ完成表格隔行换色的简单实例
2017/08/25 Javascript
详解各版本React路由的跳转的方法
2018/05/10 Javascript
对vuejs的v-for遍历、v-bind动态改变值、v-if进行判断的实例讲解
2018/08/27 Javascript
JavaScript设计模式之代理模式实例分析
2019/01/16 Javascript
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
2019/05/14 jQuery
文章或博客自动生成章节目录索引(支持三级)的实现代码
2020/05/10 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
vue动态设置页面title的方法实例
2020/08/23 Javascript
ES6中的类(Class)示例详解
2020/12/09 Javascript
Vue与React的区别和优势对比
2020/12/18 Vue.js
python实现的系统实用log类实例
2015/06/30 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
python中的set实现不重复的排序原理
2018/01/24 Python
Python3编码问题 Unicode utf-8 bytes互转方法
2018/10/26 Python
selenium+headless chrome爬虫的实现示例
2021/01/08 Python
整理的15个非常有用的 HTML5 开发教程和速查手册
2011/10/18 HTML / CSS
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
size?瑞典:英国伦敦的球鞋精品店
2018/03/01 全球购物
Tea Collection官网:一家位于旧金山的童装公司
2020/08/07 全球购物
考试退步检讨书
2014/01/15 职场文书
电子信息工程自荐信
2014/05/26 职场文书
2016年公司“3.12”植树节活动总结
2016/03/16 职场文书
AJAX实现指定部分页面刷新效果
2021/10/16 Javascript