<el-tree
ref="treeRef"
show-checkbox
node-key="id"
:data="allSpuList"
@check-change="onCheckChange"
:filter-node-method="filterNode"
:props="defaultProps"
>
setCheckedNodes(node) {
let checkedNodes = this.$refs.treeRef?.getCheckedNodes();
if (this.filterText) {
const text = this.filterText.toLowerCase(); //toLowerCase转为小写 保证了匹配不区分大小写
// 筛选出可见节点的 ID
const visibleKeys = checkedNodes
.filter((item) => item.name.toLowerCase().includes(text))
.map((item) => item.id);
// 设置选中状态
this.$refs.treeRef?.setCheckedKeys(this.treeCheckKeys.concat(visibleKeys));
} else {
this.$refs.treeRef?.setCheckedNodes(node);
}
},
onCheckChange(data, checked, children) {
console.log(children);
if (this.isInitCheck) {
if (checked) {
this.setSpuAction(data, "add"); this.setCheckedNodes(data);
} else {
if (this.deleteSPUIds.indexOf(data.typeId) === -1) {
this.deleteSPUIds.push(data.typeId);
}
}
}
},