element tree懒加载模式 手动刷新数据
在做项目的时候 遇到的问题是 点击表格内不同的选项 在弹框内加载不同的树形数据。在使用懒加载的时候,发现打开不同的弹框只加载了一次数据,弹框内的内容没有更新。
解决办法
- 首先是在data里面定义一个变量,将node.level == 0的node存起来,node.level==0的resolve也存起来。
data: () => {
return {
node_zero: '', // 将node.level == 0的node存起来
resolve_zero: '', // 将node.level == 0的resolve存起来
}
}
loadNode 方法
loadNode(node, resolve) {
if (node.level === 0) {
this.node_zero= node
this.resolve_zero = resolve
this.node_zero.childNodes = []
this.getInitNodes(resolve)
}
if (node.level >= 1) {
this.getChildrenNodes(node, resolve)
}
}
打开弹窗的方法:
handleSetting(row) {
this.loadNode(this.node_zero, this.resolve_zero ) // 再次执行懒加载的方法
}