From 42e545dd661ceb51036407f9e9cf01d3819301b0 Mon Sep 17 00:00:00 2001 From: Thanaphon Frappet Date: Thu, 14 Aug 2025 11:07:01 +0700 Subject: [PATCH] fix: value option no set --- src/components/shared/select/select.ts | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/src/components/shared/select/select.ts b/src/components/shared/select/select.ts index 08fd88b2..cf1555cb 100644 --- a/src/components/shared/select/select.ts +++ b/src/components/shared/select/select.ts @@ -35,7 +35,13 @@ export const createSelect = >( let previousSearch = ''; watch(value, (v) => { - if (!v || (cache && cache.find((opt) => opt[valueField] === v))) return; + if (!v) return; + + if (cache && cache.find((opt) => opt[valueField] === v)) { + valueOption.value = cache.find((opt) => opt[valueField] === v); + return; + } + getSelectedOption(); }); @@ -63,7 +69,15 @@ export const createSelect = >( const currentValue = value.value; if (!currentValue) return; - if (selectOptions.value.find((v) => v[valueField] === currentValue)) return; + + const option = selectOptions.value.find( + (v) => v[valueField] === currentValue, + ); + + if (option) { + valueOption.value = option; + return; + } if (valueOption.value && valueOption.value[valueField] === currentValue) { return selectOptions.value.unshift(valueOption.value); }