From 6336cf9e242b7a0142b57739eceb5d61b24c66e2 Mon Sep 17 00:00:00 2001 From: alexm Date: Thu, 17 Apr 2025 10:44:07 +0200 Subject: [PATCH 1/3] test: fix warning --- src/components/common/VnSelect.vue | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/src/components/common/VnSelect.vue b/src/components/common/VnSelect.vue index 8c70cbef7..10e50d8a9 100644 --- a/src/components/common/VnSelect.vue +++ b/src/components/common/VnSelect.vue @@ -152,6 +152,16 @@ const value = computed({ }, }); +const arrayDataKey = + $props.dataKey ?? + ($props.url?.length > 0 ? $props.url : ($attrs.name ?? $attrs.label)); + +const arrayData = useArrayData(arrayDataKey, { + url: $props.url, + searchUrl: false, + mapKey: $attrs['map-key'], +}); + const computedSortBy = computed(() => { return $props.sortBy || $props.optionLabel + ' ASC'; }); @@ -174,16 +184,7 @@ onMounted(() => { if ($props.focusOnMount) setTimeout(() => vnSelectRef.value.showPopup(), 300); }); -const arrayDataKey = - $props.dataKey ?? - ($props.url?.length > 0 ? $props.url : ($attrs.name ?? $attrs.label)); - -const arrayData = useArrayData(arrayDataKey, { - url: $props.url, - searchUrl: false, - mapKey: $attrs['map-key'], -}); -const someIsLoading = computed(() => isLoading.value || arrayData.isLoading); +const someIsLoading = computed(() => isLoading.value || !!arrayData?.isLoading); function findKeyInOptions() { if (!$props.options) return; return filter($props.modelValue, $props.options)?.length; From c5fb889b7516e949dc2988978aca2819b49ba67f Mon Sep 17 00:00:00 2001 From: alexm Date: Thu, 17 Apr 2025 10:49:50 +0200 Subject: [PATCH 2/3] fix: simplify loading state check in VnSelect component --- src/components/common/VnSelect.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/common/VnSelect.vue b/src/components/common/VnSelect.vue index 10e50d8a9..8d598e7ec 100644 --- a/src/components/common/VnSelect.vue +++ b/src/components/common/VnSelect.vue @@ -184,7 +184,7 @@ onMounted(() => { if ($props.focusOnMount) setTimeout(() => vnSelectRef.value.showPopup(), 300); }); -const someIsLoading = computed(() => isLoading.value || !!arrayData?.isLoading); +const someIsLoading = computed(() => isLoading.value || arrayData.isLoading); function findKeyInOptions() { if (!$props.options) return; return filter($props.modelValue, $props.options)?.length; From 99bc6d3b75cfaf438deec8400db3ea9cfe0ed9fe Mon Sep 17 00:00:00 2001 From: alexm Date: Thu, 17 Apr 2025 10:59:57 +0200 Subject: [PATCH 3/3] fix: add optional chaining to loading state check in VnSelect component --- src/components/common/VnSelect.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/common/VnSelect.vue b/src/components/common/VnSelect.vue index 8d598e7ec..edbee94b2 100644 --- a/src/components/common/VnSelect.vue +++ b/src/components/common/VnSelect.vue @@ -184,7 +184,7 @@ onMounted(() => { if ($props.focusOnMount) setTimeout(() => vnSelectRef.value.showPopup(), 300); }); -const someIsLoading = computed(() => isLoading.value || arrayData.isLoading); +const someIsLoading = computed(() => isLoading.value || arrayData?.isLoading?.value); function findKeyInOptions() { if (!$props.options) return; return filter($props.modelValue, $props.options)?.length;