ElementUI中樹形控件el-tree修改樣式/添加title


目前項目中用的是VUE+Element,中間有個樹結構展示的分級分組數據,初步實現了數據加載/點擊事件的完成。    

 1     <el-tree
 2       :props="props"
 3       :data="treeData"
 4       ref="tree"
 5       :load="loadNode"
 6       :filter-node-method="filterNode"
 7       node-key="id"
 8       :default-expanded-keys="['100']"
 9       @current-change="handleNodeClick"
10       lazy
11     ></el-tree>

 js代碼如下

 1 loadNode(node, resolve) {
 2       if (node.level === 0) {
 3         //getData:獲取數據接口
 4         getData().then(function(res) {
 5           if (res && res.data) { 
 6             let treeData = res.data;
 7             return resolve(treeData);
 8           }
 9         });
10       } else {
11         if (node.data && node.data.children && node.data.children.length > 0) {
12           return resolve(node.data.children);
13         } else if (
14           node.data &&
15           node.data.children &&
16           node.data.children.length === 0
17         ) {
18           //getDataList:獲取最后一級數據的接口
19           getDataList({ id: node.data.id }).then(function(res) {
20             res.data.forEach(data => {
21               data.leaf = true;
22             });
23             return resolve(res.data);
24           });
25         }
26       }
27     }

但是,項目經理說,1.鼠標移入要顯示全部內容 2.如果有編碼的數據要高亮顯示。

如果是標簽,我知道肯定說很簡單1加title,2判斷加不同類名

可是它是樹啊,數據都在treeData里面,官網沒有案例,我不會了。。。

然后上網查資料,我又會了!

解決方案如下:

 1 <el-tree
 2       :props="props"
 3       :data="treeData"
 4       ref="tree"
 5       :load="loadNode"
 6       :filter-node-method="filterNode"
 7       node-key="id"
 8       :default-expanded-keys="['100']"
 9       @current-change="handleNodeClick"
10       lazy
11     >
12       <span class="span-ellipsis" slot-scope="{ node, data }">
13         <span :title="node.label" :class="node.data.code ? 'node1' : 'node2'">{{
14           node.label
15         }}</span>
16       </span>
17     </el-tree>

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM