关于javascript:thisrefstreesetCheckedKeys不能清空选中

问题

Vue+element tree应用,当弹窗敞开时,this.$refs.tree.setCheckedKeys([])不能清空选中。

解决

因为弹窗敞开,导致this.$refs.tree.setCheckedKeys([])有效。

此时,须要咱们从新获取整个树组件的node,而后将对应的每个选项checked为空。

// 首先获取node
let node = this.$refs.tree.getNode(this.data[0].id).parent;
// 这里的this.data是指的树的数据;而id是指,:node-key="id"这里的id。从而获取到整个树的node
// 而后便历树,将所有的checked改成false
node.childNodes.map(val=>{
  val.checked = false;
  if(val.childNodes&&val.childNodes.length>0){
    val.childNodes.map(value=>{
      value.checked = false
    })  
  }
})

[Vue+element tree应用,当弹窗敞开时,this.$refs.tree.setCheckedKeys([])不能清空选中](https://github.com/yihan12/da…

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理