方案一
1.首先定义一个map(parentMap)负责存储所有已经点开的父级节点
2.在table属性中的:treeLoad="treeLoad"对应的方法中添加this.parentMap.set(tree.id, { tree, treeNode, resolve })
3.在需要刷新的地方添加代码
data() {
return {
maps: new Map(),
}
}
treeLoad(tree, treeNode, resolve) {
const parentId = tree.id;
this.maps.set(parentId, { tree, treeNode, resolve });
getLazyList(parentId).then((res) => {
resolve(res.data.data);
});
},
// 局部刷新树列表
updateTable(parentId) {
this.maps.forEach((item, key) => {
if (parentId == key) {
const { tree, treeNode, resolve } = this.maps.get(key);
tree.id = parentId;
this.treeLoad(tree, treeNode, resolve);
}
});
},