解决element UI tree控件无单选API,无法实现单选问题

本文介绍Vue中使用Element UI的树形组件实现复杂交互功能的方法,包括如何处理父节点与子节点之间的独立选择状态及点击事件。通过具体示例展示了如何使用setCheckedNodes方法来更新树形结构中被选中的节点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

.vue文件


<el-tree
  :data="treeData"
  show-checkbox
  node-key="id"  
  :props="defaultProps"
  check-strictly
  @check-change="handleClick" 
  ref="treeForm">           
</el-tree>

ref  vue 的引用信息
node-key="id"   树节点的唯一标识(查看官网API)
:props="defaultProps"  tree树的默认属性修改
check-strictly   父节点不相关联子节点

@check-change="handleClick"  当前节点变化时处理事件
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

.js文件

export default{ data(){ return { i: 0, } }, computed:{ }, mounted(){ }, methods:{ handleClick(data, checked, node) { this.i++;
//此处注意父节点的个数,从而影响首次点击的效果。即如果为3级节点,需要加上if(this.i>2)的条件。 if( this.i% 2== 0){ if( checked){ this.$refs.treeForm.setCheckedNodes([]); this.$refs.treeForm.setCheckedNodes([data]); //交叉点击节点 } else{ this.$refs.treeForm.setCheckedNodes([]); //点击已经选中的节点,置空 } } }, } }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
注意:setCheckedNodes  
勾选的节点,必须设置 node-key 属性
  • 1
  • 2
  • 3

参考来源  :   element UI官网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值