vue遞歸實現(xiàn)自定義tree組件
更新時間:2021年08月20日 11:46:08 作者:Ace.九階斗宗
這篇文章主要為大家詳細介紹了vue遞歸實現(xiàn)自定義tree組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
本文實例為大家分享了vue遞歸實現(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:"一級1", children:[ { title:"二級1-1", children:[ { title:"三級1-1-1", children:[ { title:"四級1-1-1-1", children:[ { title:"五級1-1-1-1-1" } ] } ] } ] },{ title:'二級1-2', children:[ { title:"三級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)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue表單綁定的實例代碼(單選按鈕,選擇框(單選時,多選時,用 v-for 渲染的動態(tài)選項)
本文通過實例代碼給大家介紹了Vue表單綁定(單選按鈕,選擇框(單選時,多選時,用 v-for 渲染的動態(tài)選項)的相關(guān)知識,非常不錯,具有一定的參考借鑒價值 ,需要的朋友可以參考下2019-05-05vue.js使用v-pre與v-html輸出HTML操作示例
這篇文章主要介紹了vue.js使用v-pre與v-html輸出HTML操作,結(jié)合實例形式分析了vue.js基于v-pre與v-html屬性輸出HTML的具體操作技巧,需要的朋友可以參考下2018-07-07Vue結(jié)合Element-Plus封裝遞歸組件實現(xiàn)目錄示例
本文主要介紹了Vue結(jié)合Element-Plus封裝遞歸組件實現(xiàn)目錄示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-04-04