ElementUI Tree 樹形控件的使用并給節(jié)點添加圖標(biāo)
前言:
因為項目需要用Vue做一個管理系統(tǒng),其中有一個公司部門的管理頁面有用到ElementUI 的樹形控件,但是結(jié)構(gòu)中沒有使用chexkBox選項框,針對這個功能碰到的一些問題做一下總結(jié)
一,數(shù)據(jù)渲染
1)在<el-tree>標(biāo)簽中綁定data屬性
2)在vue實例的data中聲明list變量
3)從后臺獲取到的數(shù)據(jù)是以數(shù)組里面嵌套多個對象的結(jié)構(gòu)并賦值給list,
當(dāng)前的數(shù)據(jù)是OrgName為當(dāng)前結(jié)構(gòu)名稱,
Children作為子分支數(shù)組,
子分支中的結(jié)構(gòu)與當(dāng)前結(jié)構(gòu)一致
4)在頁面中展示結(jié)構(gòu)的方法是在<el-tree>標(biāo)簽中綁定porps屬性,
并在vue實例的data中用label屬性定義顯示的名稱,
用childern屬性綁定展示的子分支數(shù)據(jù)
5)最后展示的結(jié)構(gòu)如下
二,點擊當(dāng)前分支獲取當(dāng)前分支與上級分支的值
1)此處使用的是@node-click事件并綁定一個函數(shù),
函數(shù)在vue實例的methods中定義,并可以接收兩個參數(shù)node與data
2)node是一個對象,
就是點擊當(dāng)前分支獲得的數(shù)據(jù),
如果只需要當(dāng)前層級的數(shù)據(jù)的話就可以使用node,
后臺有一并返給我上級的ID,
但是頁面中點擊分支后還需要顯示上級的名稱,
所以此處使用node就不太夠
3)data同樣也是一個對象,
他的data屬性包含的就是當(dāng)前分支的值,
其中的parent屬性就包含了他上級的值,
甚至里面的parent屬性還包含更上一級的值一直到最外層,
可以根據(jù)自己當(dāng)前項目的需要來選擇使用data還是node來取到自己需要的值
三,el-tree 樹形控件給節(jié)點添加圖標(biāo)
<template> <div class="tree"> <el-tree :data="data5" node-key="id" default-expand-all > <span class="custom-tree-node" slot-scope="{ node, data }"> <span> <i :class="node.icon"></i>{{ node.label }} </span> </span> </el-tree> </div> </template> <script> export default { data () { return { data5: [{ id: 1, label: '一級 1', icon:'el-icon-success', children: [{ id: 4, label: '二級 1-1', children: [{ id: 9, label: '三級 1-1-1', icon: 'el-icon-info' }, { id: 10, label: '三級 1-1-2' }] }] }, { id: 2, label: '一級 2', children: [{ id: 5, label: '二級 2-1', }, { id: 6, label: '二級 2-2' }] }, { id: 3, label: '一級 3', children: [{ id: 7, label: '二級 3-1' }, { id: 8, label: '二級 3-2' }] }] } } } </script> <style scoped> </style>
到此這篇關(guān)于ElementUI Tree 樹形控件的使用并給節(jié)點添加圖標(biāo)的文章就介紹到這了,更多相關(guān)Element Tree 樹形控件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue3的介紹和兩種創(chuàng)建方式詳解(cli和vite)
這篇文章主要介紹了vue3的介紹和兩種創(chuàng)建方式(cli和vite),vue3對比vue2帶來的性能提升有很多優(yōu)勢,總體來說Vue 3在性能、開發(fā)體驗和代碼組織方面都有所改進(jìn),使得它更加適合于大型、復(fù)雜的應(yīng)用程序開發(fā),需要的朋友可以參考下2023-04-04vue?長列表數(shù)據(jù)刷新的實現(xiàn)及思考
這篇文章主要為大家介紹了vue?長列表數(shù)據(jù)刷新的實現(xiàn)及思考,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04詳解如何在vue+element-ui的項目中封裝dialog組件
這篇文章主要介紹了詳解如何在vue+element-ui的項目中封裝dialog組件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12