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 相关文章推荐
由prototype_1.3.1进入javascript殿堂-类的初探
Nov 06 Javascript
Javascript 读后台cookie代码
Sep 15 Javascript
JavaScript 获取事件对象的注意点
Jul 29 Javascript
基于jQuery的弹出警告对话框美化插件(警告,确认和提示)
Jun 10 Javascript
jquery 多行滚动代码(附详细解释)
Jun 17 Javascript
js 字符串转化成数字的代码
Jun 29 Javascript
动态添加删除表格行的js实现代码
Feb 28 Javascript
jQuery的Read()方法代替原生JS详解
Nov 08 Javascript
JS中BOM相关知识点总结(必看篇)
Nov 22 Javascript
面试常见的js算法题
Mar 23 Javascript
vue中监听路由参数的变化及方法
Dec 06 Javascript
详解为什么Vue中不要用index作为key(diff算法)
Apr 04 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
php 之 没有mysql支持时的替代方案
2006/10/09 PHP
php 图片上传类代码
2009/07/17 PHP
Destoon实现多表查询示例
2014/08/21 PHP
WampServer搭建php环境时遇到的问题汇总
2015/07/23 PHP
linux下为php添加iconv模块的方法
2016/02/28 PHP
Laravel 之url参数,获取路由参数的例子
2019/10/21 PHP
PHP实现基本留言板功能原理与步骤详解
2020/03/26 PHP
jquery导航制件jquery鼠标经过变色效果示例
2013/12/05 Javascript
JS实现仿京东淘宝竖排二级导航
2014/12/08 Javascript
vue多级多选菜单组件开发
2020/09/08 Javascript
Javascript 数组去重的方法(四种)详解及实例代码
2016/11/24 Javascript
JS+HTML+CSS实现轮播效果
2017/11/28 Javascript
echarts整合多个类似option的方法实例
2018/07/10 Javascript
vue中uni-app 实现小程序登录注册功能
2019/10/12 Javascript
原生js实现随机点餐效果
2019/12/10 Javascript
6种JavaScript继承方式及优缺点(小结)
2020/02/06 Javascript
jquery实现两个div中的元素相互拖动的方法分析
2020/04/05 jQuery
Python语法快速入门指南
2015/10/12 Python
Python自动化开发学习之三级菜单制作
2017/07/14 Python
详解python持久化文件读写
2019/04/06 Python
Python获取时间范围内日期列表和周列表的函数
2019/08/05 Python
pytorch 自定义数据集加载方法
2019/08/18 Python
python rsync服务器之间文件夹同步脚本
2019/08/29 Python
django处理select下拉表单实例(从model到前端到post到form)
2020/03/13 Python
浅谈keras中的后端backend及其相关函数(K.prod,K.cast)
2020/06/29 Python
Cinque网上商店:德国服装品牌
2019/03/17 全球购物
一套软件开发工程师笔试题
2015/05/18 面试题
Ruby如何进行文件操作
2014/07/17 面试题
数学高效课堂实施方案
2014/03/29 职场文书
教师年度考核评语
2014/04/28 职场文书
怀念母亲教学反思
2014/04/28 职场文书
2014年中学生检讨书大全
2014/10/09 职场文书
如何计划开一家便利店?
2019/07/31 职场文书
Python打包为exe详细教程
2021/05/18 Python
Python 居然可以在 Excel 中画画你知道吗
2022/02/15 Python
Windows Server 2019 配置远程控制以及管理方法
2022/04/28 Servers