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 相关文章推荐
DOM 脚本编程中的兄弟节点
Oct 31 Javascript
Jquery 点击按钮显示和隐藏层的代码
Jul 25 Javascript
js 剪切板的用法(clipboardData.setData)与js match函数介绍
Nov 19 Javascript
标题过长使用javascript按字节截取字符串
Apr 24 Javascript
JavaScript动态改变HTML页面元素例如添加或删除
Aug 10 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
Feb 25 Javascript
详解在微信小程序的JS脚本中使用Promise来优化函数处理
Mar 06 Javascript
JS实现查找数组中对象的属性值是否存在示例
May 24 Javascript
判断“命令按钮”是否被鼠标单击详解
Jul 31 Javascript
vue 实现滚动到底部翻页效果(pc端)
Jul 31 Javascript
vue项目强制清除页面缓存的例子
Nov 06 Javascript
JavaScript实现优先级队列
Dec 06 Javascript
浅谈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
精致的人儿就要挑杯子喝咖啡
2021/03/03 冲泡冲煮
使用数据库保存session的方法
2006/10/09 PHP
浅谈php冒泡排序
2014/12/30 PHP
php实现图片上传并进行替换操作
2016/03/15 PHP
PHP实现将MySQL重复ID二维数组重组为三维数组的方法
2016/08/01 PHP
javascript 动态table添加colspan\rowspan 参数的方法
2009/07/25 Javascript
xml转json的js代码
2012/08/28 Javascript
javascript之Partial Application学习
2013/01/10 Javascript
JS修改css样式style浅谈
2013/05/06 Javascript
JavaScript验证图片类型(扩展名)的函数分享
2014/05/05 Javascript
jQuery实现点击图片翻页展示效果的方法
2015/02/16 Javascript
js实现滑动到页面底部自动加载更多功能
2017/02/15 Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(上)
2017/04/21 Javascript
vue filters的使用详解
2018/06/11 Javascript
Angular6 用户自定义标签开发的实现方法
2019/01/08 Javascript
nodejs 递归拷贝、读取目录下所有文件和目录
2019/07/18 NodeJs
prettier自动格式化去换行的实现代码
2020/08/25 Javascript
python使用win32com在百度空间插入html元素示例
2014/02/20 Python
Python同时向控制台和文件输出日志logging的方法
2015/05/26 Python
python连接数据库的方法
2017/10/19 Python
Python SQLite3简介
2018/02/22 Python
pandas使用get_dummies进行one-hot编码的方法
2018/07/10 Python
对python requests的content和text方法的区别详解
2018/10/11 Python
Python之虚拟环境virtualenv,pipreqs生成项目依赖第三方包的方法
2019/07/23 Python
Django自带用户认证系统使用方法解析
2020/11/12 Python
德国鞋子网上商店:Omoda.de
2017/03/31 全球购物
Pat McGrath Labs官网:世界上最有影响力的化妆师推出的彩妆品牌
2018/01/07 全球购物
潘多拉珠宝俄罗斯官方网上商店:PANDORA俄罗斯
2020/09/22 全球购物
教学个人的自我评价分享
2014/02/16 职场文书
小学教师个人工作总结2015
2015/04/20 职场文书
2015年领班工作总结
2015/04/29 职场文书
Python list去重且保持原顺序不变的方法
2021/04/03 Python
Python一行代码实现自动发邮件功能
2021/05/30 Python
Mysql 如何实现多张无关联表查询数据并分页
2021/06/05 MySQL
一级电子管军用接收机测评
2022/04/05 无线电
DQL数据查询语句使用示例
2022/12/24 MySQL