gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1377
阅读:4779回复:2

手动 清除 el-tree; el-tree清除已选中的;el-tree删除节点的勾选状态

楼主#
更多 发布于:2021-04-23 16:39
el-tree手动清除已选中的选项

清除 element  el-tree 已选中的选项,光是清除 default-checked-keys 值是没用的

element 的 el-tree 组件是采用赋值的方式改变是否勾选的,所以你应该使用组件中提供的 this.$refs.tree.setCheckedKeys([]);

this.$refs.tree.setCheckedKeys([]); //一行代码搞定

gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1377
沙发#
发布于:2021-04-23 16:39
gogogo
管理员
管理员
  • UID25
  • 粉丝0
  • 关注0
  • 发帖数1377
板凳#
发布于:2021-04-23 16:43
el-tree删除节点的勾选状态
el-tree使用default-checked-keys属性,通过一个id数组赋值,设置树的复选框勾选状态。但删除选中状态的话,清空数组是无效的。数组的数据被删除无法直接反应在复选框取消勾选上。使用组件提供的
this.r e f s . t r e e . s e t C h e c k e d K e y s ( [ ] ) ; 来 取 消 勾 选
t h i s . refs.tree.setCheckedKeys([]);来取消勾选
this.refs.tree.setCheckedKeys([]);来取消勾选
this.nextTick()
dom更新之后再执行回调:



this.defaultcheckedtreenode = JSON.parse(JSON.stringify(this.defaultcheckedtreenode)); this.defaultcheckedtreenode.remove(config.id);//删除相应父级的勾选状态 this.$nextTick(function() {//取消勾选状态的方法需要配合setCheckedKeys使用。直接改变数组数据无法取消勾选状态 this.$refs.tree.setCheckedKeys(this.defaultcheckedtreenode,true); })












————————————————
版权声明:本文为CSDN博主「努力学习前端的77」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36545813/article/details/105200406
游客


返回顶部