增城新塘网站建设,沧州网站建设联系电话,小企业网络营销外包,俄语网站开发2024.1.29今天我学习了如何使用el-tree的setChecked用法#xff0c;在使用el-tree的时候我们需要进行回显情况#xff1a;如#xff1a;
[{id:1,name:张三,
children:[{id:1-1,name:张三四},{id:1-2,name:张三五}]},
{id:2,name:李四}]
如果我们存id#xff1a; [1,2]在使用el-tree的时候我们需要进行回显情况如
[{id:1,name:张三,
children:[{id:1-1,name:张三四},{id:1-2,name:张三五}]},
{id:2,name:李四}]
如果我们存id [1,2]是可以把整个树都回显但是如果在id为2的父数据里面添加子节点如
[{id:1,name:张三,
children:[{id:1-1,name:张三四},{id:1-2,name:张三五}]},
{id:2,name:李四,
children:[{id:2-1,name:李四三}]}]
这样会把2-1的子节点也一起回显了这就是父子联动。
但是我们希望的是父节点变化子节点不受影响也就是父子不联动。
我们可以使用setChecked方法
let all_codes [1,1-1,1-2,2]all_codes.forEach(item{this.$refs.tree.setChecked(item,true,false)//判断子节点数据是否存在存在则回显不用深度遍历
})
这样就可以实现父节点变化子节点自己改变。
存在问题
如果列表加载数据比回显的数据速度会会导致有时候回显不上的问题。
解决办法设置定时器。
let all_codes [1,1-1,1-2,2]setTimeout((){all_codes.forEach(item{this.$refs.tree.setChecked(item,true,false)//判断子节点数据是否存在存在则回显不用深度遍历})},1000)