fix: 节点选中时过滤父节点禁用状态
This commit is contained in:
parent
dfa2ac3435
commit
a4b8f8f795
@ -200,11 +200,12 @@ function onSelect(item: FlattenedItem<Recordable<any>>, isSelected: boolean) {
|
|||||||
get(i.value, props.valueField) === get(item.value, props.valueField)
|
get(i.value, props.valueField) === get(item.value, props.valueField)
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
?.parents?.forEach((p) => {
|
?.parents?.filter((item) => !get(item, props.disabledField))
|
||||||
if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) {
|
?.forEach((p) => {
|
||||||
modelValue.value.push(p);
|
if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) {
|
||||||
}
|
modelValue.value.push(p);
|
||||||
});
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
!props.checkStrictly &&
|
!props.checkStrictly &&
|
||||||
@ -218,7 +219,8 @@ function onSelect(item: FlattenedItem<Recordable<any>>, isSelected: boolean) {
|
|||||||
get(i.value, props.valueField) === get(item.value, props.valueField)
|
get(i.value, props.valueField) === get(item.value, props.valueField)
|
||||||
);
|
);
|
||||||
})
|
})
|
||||||
?.parents?.reverse()
|
?.parents?.filter((item) => !get(item, props.disabledField))
|
||||||
|
?.reverse()
|
||||||
.forEach((p) => {
|
.forEach((p) => {
|
||||||
const children = flattenData.value.filter((i) => {
|
const children = flattenData.value.filter((i) => {
|
||||||
return (
|
return (
|
||||||
@ -324,7 +326,7 @@ defineExpose({
|
|||||||
:class="
|
:class="
|
||||||
cn('cursor-pointer', getNodeClass?.(item), {
|
cn('cursor-pointer', getNodeClass?.(item), {
|
||||||
'data-[selected]:bg-accent': !multiple,
|
'data-[selected]:bg-accent': !multiple,
|
||||||
'cursor-not-allowed': isNodeDisabled(item),
|
'text-foreground/50 cursor-not-allowed': isNodeDisabled(item),
|
||||||
})
|
})
|
||||||
"
|
"
|
||||||
v-bind="
|
v-bind="
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user