方法一:(少用)
//首先是保持根节点
loadNode(node, resolve) {
//
if (node.level === 0) {
this.node_had = node;//这里是关键!在data里面定义一个变量,将node.level == 0的node存起来
this.resolve_had = resolve;//同上,把node.level == 0的resolve也存起来
request.post("/gljs/queryjs").then(res => {
if (res.errorCode === 0) {
return resolve(res.data);
}
});
} else {
request.post("/gljs/querygnsbyjs").then(res => {
if (res.errorCode === 0) {
resolve(res.data);
}
});
}
}
//当请求新数据时,两行代码就可以了。
requestNewData() {
this.node_had.childNodes = [];//把存起来的node的子节点清空,不然会界面会出现重复树!
this.loadNode(this.node_had, this.resolve_had);//再次执行懒加载的方法
...//下面的代码省略
}
方法二:
let node = this.$refs.tree.getNode(id); //要刷新的tree id
node.loaded = false;
node.expand();