原文:https://blog.csdn.net/gaojie_csdn/article/details/80738488
【問題】
在頁面使用ElementUI的時候,想做出一個主動展開樹節點的效果,但是只有點擊邊上三角形才能夠展開,查了element文檔,沒有找到方法
解決方案
對於前端問題有個很好的工具,就是打印日志,於是在代碼里面找到指定對象,打印日志去查找
下面是我的樹,別名為 tree,點擊多選框的事件為 handleCheck
<el-tree
ref="tree"
show-checkbox
:check-on-click-node="true"
:expand-on-click-node="true"
:data="categorys"
node-key="id"
:props="defaultProps"
@check="handleCheck"
@node-expand="handleNodeExpand"
@node-click="handleNodeClick"
@check-change="handleCheckChange"/>
點擊復選框對應監聽事件的方法,攜帶了三個參數,第一個為當前節點的數據,由於我只需要第一個,所以我只用了第一個
// 點擊復選框
handleCheck(data){
console.log(this.$refs.tree.store);
this.$refs.tree.store.nodesMap[data.id].expanded = true;
data.unfold = true;
},
打印日志代碼:在瀏覽器按F12打開控制台,然后點擊多選框
console.log(this.$refs.tree.store)
此處的266就剛好是節點 id,可以從data參數里面獲取,所以我就可以通過下面方式獲取該節點,並修改展開屬性,達到展開節點的目的,自己使用時需要找對層級關系
this.$refs.tree.store.nodesMap[data.id].expanded = true;