Skip to content

Commit 05a4d0f

Browse files
author
wyc001122
committed
fix(@vben-core/shadcn-ui): fix disabled functionality not working in VbenTree component
1 parent e89cf40 commit 05a4d0f

File tree

1 file changed

+10
-5
lines changed
  • packages/@core/ui-kit/shadcn-ui/src/ui/tree

1 file changed

+10
-5
lines changed

packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -226,21 +226,25 @@ defineExpose({
226226
'data-[selected]:bg-accent': !multiple,
227227
})
228228
"
229-
v-bind="item.bind"
229+
v-bind="
230+
Object.assign(item.bind, {
231+
tabindex: !disabled ? -1 : undefined,
232+
})
233+
"
230234
@select="
231235
(event) => {
232236
if (event.detail.originalEvent.type === 'click') {
233237
event.preventDefault();
234238
}
235-
onSelect(item, event.detail.isSelected);
239+
!disabled && onSelect(item, event.detail.isSelected);
236240
}
237241
"
238242
@toggle="
239243
(event) => {
240244
if (event.detail.originalEvent.type === 'click') {
241245
event.preventDefault();
242246
}
243-
onToggle(item);
247+
!disabled && onToggle(item);
244248
}
245249
"
246250
class="tree-node focus:ring-grass8 my-0.5 flex items-center rounded px-2 py-1 outline-none focus:ring-2"
@@ -262,10 +266,11 @@ defineExpose({
262266
<Checkbox
263267
v-if="multiple"
264268
:checked="isSelected"
269+
:disabled="disabled"
265270
:indeterminate="isIndeterminate"
266271
@click="
267272
() => {
268-
handleSelect();
273+
!disabled && handleSelect();
269274
// onSelect(item, !isSelected);
270275
}
271276
"
@@ -276,7 +281,7 @@ defineExpose({
276281
(_event) => {
277282
// $event.stopPropagation();
278283
// $event.preventDefault();
279-
handleSelect();
284+
!disabled && handleSelect();
280285
// onSelect(item, !isSelected);
281286
}
282287
"

0 commit comments

Comments
 (0)