fix(@vben-core/shadcn-ui): fix disabled functionality not working in VbenTree component (#6205)
* fix(@vben-core/shadcn-ui): fix disabled functionality not working in VbenTree component * fix(@vben-core/shadcn-ui): add cursor-not-allowed className when disabled and disable onfocus --------- Co-authored-by: wyc001122 <wangyongchao@testor.com.cn> Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
This commit is contained in:
parent
2adb8acd80
commit
024c01d350
@ -224,15 +224,20 @@ 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': disabled,
|
||||||
|
})
|
||||||
|
"
|
||||||
|
v-bind="
|
||||||
|
Object.assign(item.bind, {
|
||||||
|
onfocus: disabled ? 'this.blur()' : undefined,
|
||||||
})
|
})
|
||||||
"
|
"
|
||||||
v-bind="item.bind"
|
|
||||||
@select="
|
@select="
|
||||||
(event) => {
|
(event) => {
|
||||||
if (event.detail.originalEvent.type === 'click') {
|
if (event.detail.originalEvent.type === 'click') {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
}
|
}
|
||||||
onSelect(item, event.detail.isSelected);
|
!disabled && onSelect(item, event.detail.isSelected);
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
@toggle="
|
@toggle="
|
||||||
@ -240,7 +245,7 @@ defineExpose({
|
|||||||
if (event.detail.originalEvent.type === 'click') {
|
if (event.detail.originalEvent.type === 'click') {
|
||||||
event.preventDefault();
|
event.preventDefault();
|
||||||
}
|
}
|
||||||
onToggle(item);
|
!disabled && onToggle(item);
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
class="tree-node focus:ring-grass8 my-0.5 flex items-center rounded px-2 py-1 outline-none focus:ring-2"
|
class="tree-node focus:ring-grass8 my-0.5 flex items-center rounded px-2 py-1 outline-none focus:ring-2"
|
||||||
@ -262,10 +267,11 @@ defineExpose({
|
|||||||
<Checkbox
|
<Checkbox
|
||||||
v-if="multiple"
|
v-if="multiple"
|
||||||
:checked="isSelected"
|
:checked="isSelected"
|
||||||
|
:disabled="disabled"
|
||||||
:indeterminate="isIndeterminate"
|
:indeterminate="isIndeterminate"
|
||||||
@click="
|
@click="
|
||||||
() => {
|
() => {
|
||||||
handleSelect();
|
!disabled && handleSelect();
|
||||||
// onSelect(item, !isSelected);
|
// onSelect(item, !isSelected);
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
@ -276,7 +282,7 @@ defineExpose({
|
|||||||
(_event) => {
|
(_event) => {
|
||||||
// $event.stopPropagation();
|
// $event.stopPropagation();
|
||||||
// $event.preventDefault();
|
// $event.preventDefault();
|
||||||
handleSelect();
|
!disabled && handleSelect();
|
||||||
// onSelect(item, !isSelected);
|
// onSelect(item, !isSelected);
|
||||||
}
|
}
|
||||||
"
|
"
|
||||||
|
Loading…
Reference in New Issue
Block a user