@@ -192,9 +192,9 @@ defineExpose({
192
192
:model-value =" treeValue"
193
193
v-model:expanded =" expanded as string[]"
194
194
:default-expanded =" defaultExpandedKeys as string[]"
195
- :propagate-select =" !checkStrictly"
196
- :multiple =" multiple"
197
- :disabled =" disabled"
195
+ :propagate-select =" !props. checkStrictly"
196
+ :multiple =" props. multiple"
197
+ :disabled =" props. disabled"
198
198
:selection-behavior =" allowClear || multiple ? 'toggle' : 'replace'"
199
199
@update:model-value =" updateModelValue"
200
200
v-slot =" { flattenItems }"
@@ -229,7 +229,11 @@ defineExpose({
229
229
v-bind =" item.bind"
230
230
@select ="
231
231
(event) => {
232
- if (event.detail.originalEvent.type === 'click') {
232
+ if (
233
+ event.detail.originalEvent.type === 'click' ||
234
+ props.disabled ||
235
+ get(item.value, 'disabled')
236
+ ) {
233
237
event.preventDefault();
234
238
}
235
239
onSelect(item, event.detail.isSelected);
@@ -263,6 +267,7 @@ defineExpose({
263
267
v-if =" multiple"
264
268
:checked =" isSelected"
265
269
:indeterminate =" isIndeterminate"
270
+ :disabled =" disabled || get(item.value, 'disabled')"
266
271
@click ="
267
272
() => {
268
273
handleSelect();
@@ -274,10 +279,10 @@ defineExpose({
274
279
class =" flex items-center gap-1 pl-2"
275
280
@click ="
276
281
(_event) => {
277
- // $event.stopPropagation();
278
- // $event.preventDefault();
282
+ if (props.disabled || get(item.value, 'disabled')) {
283
+ return;
284
+ }
279
285
handleSelect();
280
- // onSelect(item, !isSelected);
281
286
}
282
287
"
283
288
>
0 commit comments