日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Vue自定義樹形控件使用詳解

瀏覽:81日期:2023-12-12 09:08:21

本文實例為大家分享了Vue自定義樹形控件的使用方法,供大家參考,具體內容如下

效果圖:

Vue自定義樹形控件使用詳解

數(shù)據(jù)結構:

tree: {title: ’’, // 標題(姓名) key: ’0’,head: ’’, // 頭像selectStatus: false, // checkBox選中狀態(tài)children: [ { title: ’旺旺一部’, key: ’0-0’, head: ’’, selectStatus: false, children: [ {key: ’0-0-0’,title: ’旺仔1’,head: require(’@/assets/wan.jpg’),selectStatus: false } ] }, { title: ’旺旺二部’, key: ’0-1’, head: ’’, selectStatus: false, children: [ {title: ’旺旺二部一隊’,key: ’0-1-0’,head: ’’,selectStatus: false,children: [ { title: ’旺旺二部一隊一班’, key: ’0-1-0-2’, head: ’’, selectStatus: false, children: [ {title: ’旺仔3’,key: ’0-1-0-2-0’,head: require(’@/assets/wan.jpg’),selectStatus: false } ] }] } ] }]},

思路:

/*自定義樹形控件的核心就是“組件自己調用自己” 這里將樹形控件封裝成一個子組件*/<template> <div> <div class='tree-custom'> <div : @click='toggleChildren'> //toggleChildren事件為“展開內容”、“關閉內容”的控制事件 /*這里是遞歸數(shù)據(jù)顯示的具體內容 例如:本項目遞歸的具體內容從效果圖上看就是“圖片/頭像”、“標題/名字”、“null/CheckBox” 效果圖顯示邏輯是: <div v-if='!headImg && label' > //如果沒有頭像圖片有標題,則顯示 “箭頭-標題”樣式</div><div v-if='headImg'> //如果有頭像圖片,則顯示 “頭像-姓名-checkBox”樣式</div> */ </div> <tree-custom // “自己調用自己”:key='children.key' // key值唯一 v-for='children in treeData' v-if='showChildren' // 根據(jù) toggleChildren事件 判斷是否展開內容:treeData='children.children' // 下面都是一些屬性,應該都能看懂吧!不多說了!:label='children.title':headImg='children.head':pkid='children.key':depth='depth+1' // 這個是用來控制每行縮進的樣式,可移步下方=>indent ()看具體用處:selectStatus='children.selectStatus'v-bind='$attrs' // 這兩個是用來實現(xiàn)祖孫組件通信的v-on='$listeners' > </tree-custom> </div> </div></template><script>export default { name: ’TreeCustom’, // 要給我們的組件一個名字!不然怎么調用呢 data () { return { showChildren: true, // 這個就是控制是否顯示內容的data~也就是展開和收起! currentInfoData: {} // 這個的用處是獲取當前行的數(shù)據(jù),為了簡潔在上方代碼的具體用處已經(jīng)被我刪掉了~意義不大 } }, //對象的默認值應由一個工廠函數(shù)返回,避免采坑 props: { treeData: { type: Array, default: () => [] }, label: { type: String, default: () => ’’ }, depth: { type: Number, default: () => 0 }, headImg: { type: String, default: () => ’’ }, pkid: { type: String, default: () => ’’ }, selectStatus: { type: Boolean, default: () => null } }, computed: { indent () { // 定義不同層級的縮進樣式 return { transform: `translate(${(this.depth - 1) * 15}px)` } } }, methods: { toggleChildren () { this.showChildren = !this.showChildren }, checkBoxSelectChange (e) { const checked = e.target.checked if (checked) { //使用$listeners方法調用祖輩的函數(shù),因為這邊是遞歸組件所以組件之間可能并不是嚴格的父子關系,所以$emit、$parent等方法都是不合適的this.$listeners.addSelectedData(this.currentInfoData) } if (!checked) {this.$listeners.deleteSelectedData(this.currentInfoData) } }, getCurrentInfo (label, headImg, pkid) { this.currentInfoData = {key: pkid,title: label,head: headImg } } }}</script>

/*組件調用方法*/<div class='tree-scroll'> <tree-custom :label='tree.title' :headImg='tree.head' :treeData='tree.children' :pkid='tree.key' :depth='0' :selectStatus='tree.selectStatus' @addSelectedData='addSelectedData' @deleteSelectedData='deleteSelectedData' /></div>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Vue
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久gogo国模啪啪裸体| 国产精品巨作av| 日韩精品高清不卡| 久久久久久久久99精品大| 性欧美69xoxoxoxo| 久久久久伊人| 亚洲免费激情| 久久在线免费| 国产精品日韩| 国产精品伦一区二区| av免费不卡国产观看| 亚洲一区区二区| 麻豆精品网站| 国产精品美女久久久| 日韩精品一卡| 日韩欧乱色一区二区三区在线| 欧美一区激情| 久久精品亚洲人成影院| 视频一区中文字幕国产| 亚洲黄色网址| 国产精品最新| 午夜国产精品视频| 欧美黑人巨大videos精品| 在线日韩av| 国产精品日韩精品在线播放| 国产色综合网| 国产高潮在线| 国产亚洲欧洲| 欧美特黄一区| 国产精品久久久久av电视剧| 青青草伊人久久| 中文字幕视频精品一区二区三区| 国产在视频一区二区三区吞精| 日韩成人高清| 日本高清不卡一区二区三区视频| 欧美天堂一区二区| 亚洲专区视频| 手机精品视频在线观看| 久久激情五月婷婷| 日韩精品一卡二卡三卡四卡无卡| 日本一区二区中文字幕| 国产精品亚洲产品| 日韩福利视频一区| 日本va欧美va瓶| 久久精品999| 精品亚洲二区| 在线看片福利| 成人日韩在线| 91av亚洲| 久久精品主播| 日韩高清欧美| 亚洲网站视频| 1024精品一区二区三区| 红杏一区二区三区| 91视频一区| 精品捆绑调教一区二区三区| 在线看片福利| 激情久久婷婷| 精品中文字幕一区二区三区av| 婷婷综合亚洲| 日韩视频在线一区二区三区| 久久中文字幕av一区二区不卡| 精品欧美激情在线观看| 老色鬼久久亚洲一区二区| 国产精品色在线网站| 日韩高清一区二区| 99riav1国产精品视频| 国产成人免费视频网站视频社区| 亚洲一区二区三区四区电影| 国产尤物精品| 美女久久久久| 国产精品欧美一区二区三区不卡| 国产偷自视频区视频一区二区| 高清日韩中文字幕| 精品免费av一区二区三区| 亚洲三区欧美一区国产二区| 99精品在线| 欧美sss在线视频| 成人在线黄色| 国产一区二区三区视频在线| 国产精品欧美一区二区三区不卡| 69堂免费精品视频在线播放| 综合欧美精品| 欧美亚洲福利| 91嫩草精品| 国产极品久久久久久久久波多结野| 日韩精品欧美大片| 亚洲欧美日韩国产| 婷婷综合社区| 精品在线99| 午夜精品福利影院| 午夜精品福利影院| 日韩福利视频一区| 黄色欧美在线| 欧美激情91| 久久久久国产精品一区三寸 | 亚洲一区二区三区免费在线观看| 一区在线免费观看| 玖玖精品视频| 国产精东传媒成人av电影| 精品国产一区二区三区2021| 欧美手机在线| 免费观看在线综合色| 国产丝袜一区| 成人日韩在线观看| 综合激情五月婷婷| 日韩精品久久久久久| 日本免费一区二区三区四区| 日韩和的一区二在线| 久久国产精品毛片| 麻豆国产欧美日韩综合精品二区| jizzjizz中国精品麻豆| 影音先锋久久| 欧美精品第一区| 亚洲国产影院| 国产亚洲欧美日韩精品一区二区三区| 国产精品外国| 久久尤物视频| 日韩久久精品网| 免费在线成人| 中文一区一区三区免费在线观| 日韩欧美视频专区| 国产私拍福利精品视频二区| 成人精品中文字幕| 国产精品主播| 老司机精品久久| 久久中文字幕av| 色爱av综合网| 久久久免费人体| 免费亚洲婷婷| 国产欧美日本| 日韩av网站免费在线| 免费在线观看日韩欧美| 免费黄色成人| 亚洲欧洲另类| 国产在线|日韩| 日韩理论片av| 国产一区二区三区四区五区传媒| 国产精品探花在线观看| 国产伦理一区| 亚洲精品无播放器在线播放| 国产视频久久| 三级欧美在线一区| 综合激情五月婷婷| 91精品国产自产在线丝袜啪| 四虎精品永久免费| 欧美另类中文字幕 | 亚洲欧洲国产精品一区| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲精品97| 国产v综合v| 在线日韩中文| 一区免费在线| 国产欧美日韩免费观看| 中文字幕一区久| 视频一区二区三区入口| av不卡免费看| 亚洲tv在线| 精品成人18| 人人精品人人爱| 久久久免费人体| 欧美美女一区| 综合亚洲视频| 精品国产麻豆| 激情久久久久久| 欧美精品国产| 色爱综合av| 日本在线不卡视频一二三区| 国产精品videosex极品| 久久中文字幕av一区二区不卡| 蜜臀av性久久久久蜜臀aⅴ流畅| 国产欧美一区| 亚洲人www| 久久天堂精品| 欧美1区2区3| 男女精品网站| 九九精品调教| 国产精品一区免费在线| 久久亚洲精品伦理| 国产a亚洲精品| 亚洲精品123区| av中文资源在线资源免费观看| 亚洲综合中文| 99精品在线免费在线观看| 欧美激情三区| 国产伦精品一区二区三区在线播放| 欧美99久久| 电影天堂国产精品| 久久久免费人体| 欧美一区影院| 日本不卡视频在线观看| 香蕉久久夜色精品国产| 91精品高清| 国产综合精品一区| 91亚洲精品视频在线观看| 国产精品88久久久久久| 日韩一区二区三区免费播放| 成人综合一区| 色婷婷精品视频| 欧美91精品|