<el-treeref="leftTree":check-strictly="true"@check-change="checkChange"/>
/*** @description: 重写勾选逻辑* @param node 选中的数据* @param checked 是否选中* @return void*/checkChange(node, checked) {//全部取消/选择const setChecked = (arr, ifChecked) =>{arr?.map((item) => {this.$refs.leftTree.setChecked(item.id, ifChecked)if(!!item?.children?.length){setChecked(item?.children, ifChecked)}})}//如果为取消if (checked === false) {//如果当前节点有子集//循环子集将他们的选中取消setChecked(node?.children ?? [], false)} else {//否则(为选中状态)//判断父节点id是否为空if (node.pid !== 'all') {//如果不为空则将其选中//循环子集将他们的选中取消setChecked(node?.children ?? [], true)}}},
el-tree重写勾选逻辑 实现父子节点勾选不互相关联 选中父级自动勾选子集 选中子集不勾选父级