前言:最近使用element开发项目,在使用异步树时(即添加了lazy),翻阅了官方提供的文档,并未找到可直接提供给开发者使用的刷新某个树节点的方法。可喜的是,终于还是找到了解决的办法,即找到对应的树节点,使用expand方法
思路:找到想要刷新的树节点,重新模拟执行一次展开请求子节点的功能。
话不多说,直接看代码吧!
1 <el-tree
2 lazy
3 ref="asyncTree"
4 :load="loadNode"
5 :node-key="id"
6 >
7 </el-tree>
8 ...
9 <scripit>
10 ...
11 methods: {
12 refreshNodeBy(id){
13 let node = this.$refs.asyncTree.getNode(id); // 通过节点id找到对应树节点对象
14 node.loaded = false;
15 node.expand(); // 主动调用展开节点方法,重新查询该节点下的所有子节点
16 }
17 }
18 ...
19 </script>
来源:oschina
链接:https://my.oschina.net/u/4274818/blog/4320124