1.0.0
我的功能是这样的,有个下拉框,选择后根据不同的下拉选项来加载tree,
tree我使用的是例子中第二种写法load数据的,
问题是,现在tree只加载一次,如何重新调用load,
我使用$forceUpdate()为什么也不会重洗刷新?
新手,求赐教
如果每次加载 Tree 的数据都是完整的,树节点不需要懒加载,那么不要用第二种方式,用第一种,直接操作 data 属性。
如果 Tree 的节点数据需要懒加载,现在并没有重新加载根节点的机制,需要我新增 API 来做这件事。
@furybean
谢谢你的回答。
但是第一种方式,怎么才能添加多层数据,我只能添加2层。
如果可以,请讲一下怎么做,谢谢。
我在看源码时发现了一个tree.root.setData方法
我在切换的时候,
var vm = this.$refs.resourceTree;
vm.tree.root.setData(newTreeRootNode);
这样就重新给tree设置了根节点,然后就可以再次点击根节点来调用load
可以说达到了我的目的,但是这样做是否有问题,我对源码看的不太懂。
多层数据只要保证你的数据使用 children 属性递归下去就可以了:
const data = [{
id: 1,
label: 'Level one 1',
children: [{
id: 11,
label: 'Level two 1-1',
children: [{
id: 111,
label: 'Level two 1-1-1'
}, {
id: 112,
label: 'Level two 1-1-2'
}]
}]
}, {
id: 2,
label: 'Level one 2',
children: [{
id: 21,
label: 'Level two 2-1'
}, {
id: 22,
label: 'Level two 2-2'
}]
}, {
id: 3,
label: 'Level one 3',
children: [{
id: 31,
label: 'Level two 3-1'
}, {
id: 32,
label: 'Level two 3-2'
}]
}];
您好,tree懒加载 根节点的重新加载 这个api计划啥时候有添加吗
您好,非常感谢贵团队提供的开源库,非常优秀的框架,关于树形结构,如果使用懒加载以及:load方法,chackbox默认选中的节点,会自动请求该节点的子集,这在数据量比较大的情况下,给浏览器造成了压力,是我使用方法不对么?还请指点~
// 重新重置根节点
const tree = this.$refs.tree.root; // root在this.$refs.tree中找到
tree.setData(this.data_level1);
Most helpful comment
您好,tree懒加载 根节点的重新加载 这个api计划啥时候有添加吗