From a4b8f8f795f788b1ea23f2752d098a690dc7a344 Mon Sep 17 00:00:00 2001 From: zouawen <846027729@qq.com> Date: Fri, 12 Sep 2025 17:31:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=8A=82=E7=82=B9=E9=80=89=E4=B8=AD?= =?UTF-8?q?=E6=97=B6=E8=BF=87=E6=BB=A4=E7=88=B6=E8=8A=82=E7=82=B9=E7=A6=81?= =?UTF-8?q?=E7=94=A8=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue index c50a79d2..45992327 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue @@ -200,11 +200,12 @@ function onSelect(item: FlattenedItem>, isSelected: boolean) { get(i.value, props.valueField) === get(item.value, props.valueField) ); }) - ?.parents?.forEach((p) => { - if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) { - modelValue.value.push(p); - } - }); + ?.parents?.filter((item) => !get(item, props.disabledField)) + ?.forEach((p) => { + if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) { + modelValue.value.push(p); + } + }); } if ( !props.checkStrictly && @@ -218,7 +219,8 @@ function onSelect(item: FlattenedItem>, isSelected: boolean) { get(i.value, props.valueField) === get(item.value, props.valueField) ); }) - ?.parents?.reverse() + ?.parents?.filter((item) => !get(item, props.disabledField)) + ?.reverse() .forEach((p) => { const children = flattenData.value.filter((i) => { return ( @@ -324,7 +326,7 @@ defineExpose({ :class=" cn('cursor-pointer', getNodeClass?.(item), { 'data-[selected]:bg-accent': !multiple, - 'cursor-not-allowed': isNodeDisabled(item), + 'text-foreground/50 cursor-not-allowed': isNodeDisabled(item), }) " v-bind="