this.$refs.tree.setCheckedKeys([])不能清空选中

Posted 易函123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了this.$refs.tree.setCheckedKeys([])不能清空选中相关的知识,希望对你有一定的参考价值。

问题

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...

以上是关于this.$refs.tree.setCheckedKeys([])不能清空选中的主要内容,如果未能解决你的问题,请参考以下文章

$(this)和this

前端js中的this

this与$(this)的区别

Vue This指代

jQuery里$(this)和this的区别在哪?

运行程序,解读this指向---case6