[vxe-table el-tree] 树表格:选中子节点,父节点无影响;选中父节点,子节点被选中,el-tree也同理

树表格:选中子节点,父节点无影响;选中父节点,子节点被选中,el-tree也同理

设置父子不关联,checkStrictly=true;

点击某个节点的多选框时,如果有子节点,递归设置子节点的checkbox选中/不选中

html 复制代码
<vxe-grid
  ref="xGrid"
  :data="tableData"
  :columns="columns"
  :tree-config="treeConfig"
  :checkbox-config="{ checkStrictly: true }"
  @checkbox-change="handleCheckboxChange"
/>
javascript 复制代码
tableData: [
   {
     id: 1,
     name: '父节点1',
     children: [
       { 
         id: 2, 
         name: '子节点1-1',
         children: [
           { id: 4, name: '孙节点1-1-1' }
         ]
       },
       { id: 3, name: '子节点1-2' }
     ]
   }
 ],
 treeConfig: {
   children: 'children',
   expandAll: true
 },
 columns: [
   { type: 'checkbox', width: 60, treeNode: true },
   { field: 'name', title: '名称' }
 ]
javascript 复制代码
handleCheckboxChange({ checked, row }) {
  // 如果有子节点,递归设置所有子孙节点
  if (row.children && row.children.length) {
    this.setAllChildren(row.children, checked)
  }
},

// 递归设置所有子节点
setAllChildren(children, checked) {
  const $table = this.$refs.xGrid
  children.forEach(child => {
    $table.setCheckboxRow(child, checked)
    if (child.children && child.children.length) {
      this.setAllChildren(child.children, checked)
    }
  })
}
相关推荐
FEF前端团队21 分钟前
小程序微信支付 V3 接入实战手册:从商户配置到前后端落地
javascript·后端·node.js
马可家的菠萝1 小时前
自动保存已经有了,为什么笔记软件还需要“历史版本”?
前端·后端·架构
半个落月1 小时前
从 "use client" 到 Route Handler:用 Todos 理解 Next.js 水合与全栈请求
前端·react.js·next.js
qq_452396231 小时前
第七篇:《大型前端项目的模块化与目录结构设计》
前端
你脑门上的脚印1 小时前
Vue 项目从零实现语音转文字、文字转语音功能(完整可用 + 踩坑指南)
前端·vue.js
paopaokaka_luck2 小时前
基于springboot3+vue3的车间生产管理系统(Echarts图形化分析、BI报表)
java·前端·spring boot·学习·echarts
程序员鱼皮2 小时前
3 大 DeepSeek Harness 进阶玩法,招多个大肥鱼帮我干活!
前端·后端·ai编程
KoPa2 小时前
HeySmart:大模型开源网关基座-请求生命周期与钩子引擎
前端·后端
悟空瞎说2 小时前
# Dispatch(GCD)苹果官方文档 白话文讲解(Objective‑C 版本文档)
javascript
七牛开发者2 小时前
Coding Agent 如何跑稳长任务?从上下文管理到运行时状态
前端·javascript·后端