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 相关文章推荐
一个不错的应用,用于提交获取文章内容,不推荐用
Mar 03 Javascript
基于jquery的多彩百分比 动态进度条 投票效果显示效果实现代码
Aug 28 Javascript
jQuery EasyUI Dialog拖不下来如何解决
Sep 28 Javascript
javascript实现滑动解锁功能
Mar 22 Javascript
基于jQuery实现的Ajax 验证用户名唯一性实例代码
Jun 28 jQuery
使用原生js+canvas实现模拟心电图的实例
Sep 20 Javascript
JavaScript DOM元素常见操作详解【添加、删除、修改等】
May 09 Javascript
vue采用EventBus实现跨组件通信及注意事项小结
Jun 14 Javascript
Vue 莹石摄像头直播视频实例代码
Aug 31 Javascript
通过npm或yarn自动生成vue组件的方法示例
Feb 12 Javascript
微信小程序-可移动菜单的实现过程详解
Jun 24 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
May 16 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
PHPWind 发帖回帖Api PHP版打包下载
2010/02/08 PHP
CodeIgniter中实现泛域名解析
2014/07/19 PHP
php简单计算页面加载时间的方法
2015/06/19 PHP
PHP面试题之文件目录操作
2015/10/15 PHP
laravel + vue实现的数据统计绘图(今天、7天、30天数据)
2018/07/31 PHP
window.addeventjs事件驱动函数集合addEvent等
2008/02/19 Javascript
一句话JavaScript表单验证代码
2009/08/02 Javascript
23个超流行的jQuery相册插件整理分享
2011/04/25 Javascript
Jquery实现图片放大镜效果的思路及代码(自写)
2013/10/18 Javascript
jquery制作多功能轮播图插件
2015/04/02 Javascript
js实现简单选项卡与自动切换效果的方法
2015/04/10 Javascript
NodeJS实现阿里大鱼短信通知发送
2016/01/17 NodeJs
Sort()函数的多种用法
2016/03/20 Javascript
jQuery实现的网页换肤效果示例
2016/09/20 Javascript
JavaScript用JSONP跨域请求数据实例详解
2017/01/06 Javascript
javascript作用域链与执行环境详解
2017/03/25 Javascript
ES6正则表达式扩展笔记
2017/07/25 Javascript
为vue-router懒加载时下载js的过程中添加loading提示避免无响应问题
2018/04/03 Javascript
vue router的基本使用和配置教程
2018/11/05 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
2018/11/14 jQuery
vue+element UI实现树形表格带复选框的示例代码
2019/04/16 Javascript
JS实现排行榜文字向上滚动轮播效果
2019/11/26 Javascript
[01:32]DOTA2次级联赛——首支职业女子战队选拔赛全记录
2014/10/23 DOTA
python进阶教程之函数对象(函数也是对象)
2014/08/30 Python
Python中使用支持向量机SVM实践
2017/12/27 Python
详解Python3序列赋值、序列解包
2019/05/14 Python
Python3 pandas 操作列表实例详解
2019/09/23 Python
Python下划线5种含义代码实例解析
2020/07/10 Python
基于Django集成CAS实现流程详解
2020/11/28 Python
中国旅游网站:途牛旅游网
2019/09/29 全球购物
英国最大的独立摄影零售商:Park Cameras
2019/11/27 全球购物
幼儿园小班教育随笔
2015/08/14 职场文书
七年级作文之雪景
2019/11/18 职场文书
浅谈vue2的$refs在vue3组合式API中的替代方法
2021/04/18 Vue.js
单身狗福利?Python爬取某婚恋网征婚数据
2021/06/03 Python
pytorch分类模型绘制混淆矩阵以及可视化详解
2022/04/07 Python