本文主要是介绍el-tree重写勾选逻辑,实现父子节点勾选不互相关联,选中父级自动勾选子集,选中子集不勾选父级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
<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重写勾选逻辑,实现父子节点勾选不互相关联,选中父级自动勾选子集,选中子集不勾选父级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!