ref方式(最好)

<el-tree
    ref="tree"
    style="overflow: auto;width: 100%;"
    :data="data"
    node-key="id"
    show-checkbox>
</el-tree>

this.$refs.tree.getCheckedNodes();
this.$refs.tree.getCheckedKeys()

el-tree定义

<el-tree
  :data="data"
  node-key="levelId"
  :props="defaultProps"
  @check-change="handleCheckChange"
  @check="handleCheck"
  show-checkbox>
</el-tree>

check和check-change都可以用,那个方便用那个

触发

  1. check: 当复选框被点击的时候触发
  2. check-change: 节点选中状态发生变化时的回调

参数

node-key: 每个树节点用来作为唯一标识的属性,整棵树应该是唯一的

默认为id,和node-key对应即可

选中时触发

handleCheck(data, checkedData) {
  // 共两个参数,依次为:
  // 传递给 data 属性的数组中该节点所对应的对象、
  // 树目前的选中状态对象,
  // 包含 checkedNodes、checkedKeys、halfCheckedNodes、halfCheckedKeys 四个属性
  console.log(checkedData)
  // 这是选中的节点的key数组
  console.log(checkedData.checkedKeys)
  // 这是选中的节点数组
  console.log(checkedData.checkedNodes)
  debugger
},
handleCheckChange(data, checked, indeterminate) {
  // 共三个参数,依次为:
  // 传递给 data 属性的数组中该节点所对应的对象、
  // 节点本身是否被选中、
  // 节点的子树中是否有被选中的节点
  console.log(data, checked, indeterminate)
  // debugger
}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐