Vue.js组件tree实现无限级树形菜单
分享一段用 <ul>和<li>标签实现tree的代码,可能写的不是很好,如果大家有更好的希望分享下。
代码看这里喽:
html代码:
<div class="tree"> <nav class='navbar'> <ul class='nav nav-stacked'> <template v-for='item in menus'> <li role='presentation' v-if='!item.children'><a href="#">{{item.text}}</a></li> <li role='presentation' v-if='item.children'><a href="#" v-on:click='toggleChildren(item)'>{{item.text}}<span class='glyphicon' v-bind:class='{ "glyphicon-chevron-right": !item.expanded, "glyphicon-chevron-down": item.expanded }'></span></a> <ul v-show='item.expanded' class="childs"> <li v-for='child in item.children'><a href="#">{{child.text}}</a></li> </ul> </li> </template> </ul> </nav> </div>
js代码:
methods: { toggleChildren: function(item) { item.expanded = !item.expanded; }, }, data() { return { menus:[{ text:'水果', expanded:false, children:[{ text:'苹果', },{ text:'荔枝' },{ text:'葡萄' },{ text:'火龙果' }] },{ text:'好吃的', expanded:false, children:[{ text:'糖', },{ text:'面包' },{ text:'火腿' },{ text:'薯片' },{ text:'碎碎面' }] },{ text:'饮料', expanded:false, children:[] }] } },
效果图:
本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。
关于vue.js组件的教程,请大家点击专题vue.js组件学习教程进行学习。
相关推荐
学习web前端 2020-09-28
小焊猪web前端 2020-09-10
青蓝 2020-08-26
liduote 2020-08-13
Qc 2020-07-19
bowean 2020-06-28
starzhangkiss 2020-06-25
xustart0 2020-06-14
WinerChopin 2020-06-12
xxuncle 2020-06-05
WinerChopin 2020-06-03
wanwanwandj 2020-06-02
randeqi 2020-05-06
newcome 2020-04-29
风萧萧梦潇 2020-05-12
chenhaotao 2020-05-10
那些年写过的代码 2020-05-09
前端学习笔记 2020-04-26
viewerlin 2020-04-20