在使用elementui的table数据的时候,会默认记录我们所有展开的节点
例如:
可以使用该方法进行将父节点之下的节点全部折叠(该方法只使用也最后的叶子节点为懒加载节点,当懒加载为父节点的时候,需要自己改造一下):
foldNode:function (row) {
let treeData = this.$refs.treeTable.store.states.treeData;
if (typeof (treeData[row.id])== "undefined") {
return
}
if (treeData[row.id].expanded){
this.$refs.treeTable.toggleRowExpansion(row)
}
let childrenID = treeData[row.id].children;
for (let index = 0; index < childrenID.length; index++) {
const element = childrenID[index];
let nodeInfo = {};
nodeInfo.id = element;
this.foldNode(nodeInfo)
}
}
当懒加载为父节点的时候,懒加载的节点都在此模块进行存储,进行一一判断就可以了
this.$refs.treeTable.store.states.lazyTreeNodeMap[row.id]