vue遞歸實(shí)現(xiàn)自定義tree組件
本文實(shí)例為大家分享了vue遞歸實(shí)現(xiàn)自定義tree組件的具體代碼,供大家參考,具體內(nèi)容如下

1. 在tree/index.vue中:
<template>
<div>
<ul>
<item :model='data'></item>
</ul>
</div>
</template>
<script>
import Item from './item'
export default {
components:{
Item
},
data(){
return{
data:{
title:"一級(jí)1",
children:[
{
title:"二級(jí)1-1",
children:[
{
title:"三級(jí)1-1-1",
children:[
{
title:"四級(jí)1-1-1-1",
children:[
{
title:"五級(jí)1-1-1-1-1"
}
]
}
]
}
]
},{
title:'二級(jí)1-2',
children:[
{
title:"三級(jí)1-2-1"
}
]
}
]
}
}
}
}
</script>
2. item.vue組件:
<template>
<li>
<div @click="toggle">
{{model.title}}
<span v-if="isFolder">[{{open?'-':'+'}}]</span>
</div>
<ul v-show="open" v-if="isFolder">
<item v-for="(child,index) in model.children" :model='child' :key='index'></item>
</ul>
</li>
</template>
<script>
export default {
name:'Item',
props:{
model:{
type:Object,
required:true
}
},
data(){
return{
open:false
}
},
computed:{
isFolder(){
return this.model.children && this.model.children.length>0
}
},
methods:{
toggle(){
if(this.isFolder) this.open =!this.open
}
}
}
</script>
3. 在任意組件中使用:
<template>
<div class="index">
<Tree></Tree>
</div>
</template>
<script>
import Tree from "@/components/tree"
components:{
Tree
}
</script>
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue表單綁定的實(shí)例代碼(單選按鈕,選擇框(單選時(shí),多選時(shí),用 v-for 渲染的動(dòng)態(tài)選項(xiàng))
本文通過實(shí)例代碼給大家介紹了Vue表單綁定(單選按鈕,選擇框(單選時(shí),多選時(shí),用 v-for 渲染的動(dòng)態(tài)選項(xiàng))的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-05-05
vue.js使用v-pre與v-html輸出HTML操作示例
這篇文章主要介紹了vue.js使用v-pre與v-html輸出HTML操作,結(jié)合實(shí)例形式分析了vue.js基于v-pre與v-html屬性輸出HTML的具體操作技巧,需要的朋友可以參考下2018-07-07
Vue實(shí)現(xiàn)拖放排序功能的實(shí)例代碼
本文通過實(shí)例代碼給大家介紹了Vue中實(shí)現(xiàn)拖放排序功能,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-07-07
詳解Vue學(xué)習(xí)筆記進(jìn)階篇之列表過渡及其他
本篇文章主要介紹了詳解Vue學(xué)習(xí)筆記進(jìn)階篇之列表過渡及其他,具有一定的參考價(jià)值,有興趣的可以了解一下2017-07-07
Vue結(jié)合Element-Plus封裝遞歸組件實(shí)現(xiàn)目錄示例
本文主要介紹了Vue結(jié)合Element-Plus封裝遞歸組件實(shí)現(xiàn)目錄示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
web項(xiàng)目開發(fā)中2個(gè)Token原因解析及示例代碼
這篇文章主要介紹了web項(xiàng)目開發(fā)中會(huì)出現(xiàn)2個(gè)Token原因的解析以及實(shí)現(xiàn)的示例代碼,有需要的同學(xué)可以借鑒參考下,希望可以有所幫助2021-09-09
vue項(xiàng)目兼容ie11的實(shí)現(xiàn)方法
本文主要介紹了vue項(xiàng)目兼容ie11的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-08-08

