From 1d2d5b2deeb5a6c04e3389707a97f1e7ec6eca49 Mon Sep 17 00:00:00 2001 From: Yuhang Date: Wed, 4 Jan 2023 16:58:36 +0800 Subject: [PATCH] fix(date-picker): repair the issue of default values not being displayed (#2229) * fix(date-picker): repair the issue of default values not being displayed * test(date-picker): update the snapshot --- src/date-picker/hooks/useRange.tsx | 50 +++++++++++++++--------- test/snap/__snapshots__/ssr.test.js.snap | 2 +- 2 files changed, 32 insertions(+), 20 deletions(-) diff --git a/src/date-picker/hooks/useRange.tsx b/src/date-picker/hooks/useRange.tsx index d50663ef78..38bcebdcfd 100644 --- a/src/date-picker/hooks/useRange.tsx +++ b/src/date-picker/hooks/useRange.tsx @@ -133,27 +133,39 @@ export default function useRange(props: TdDateRangePickerProps) { })); // 输入框响应 value 变化 - watch(value, (value) => { - if (!value) { - inputValue.value = []; - return; - } - if (!isValidDate(value, formatRef.value.format)) return; - - inputValue.value = formatDate(value, { - format: formatRef.value.format, - }); - }); + watch( + value, + (value) => { + if (!value) { + inputValue.value = []; + return; + } + if (!isValidDate(value, formatRef.value.format)) return; + + inputValue.value = formatDate(value, { + format: formatRef.value.format, + }); + }, + { + immediate: true, + }, + ); // activeIndex 变化自动 focus 对应输入框 - watch(activeIndex, (index) => { - if (!isMountedRef.value) { - isMountedRef.value = true; - return; - } - const indexMap = { 0: 'first', 1: 'second' }; - inputRef.value?.focus?.({ position: indexMap[index] }); - }); + watch( + activeIndex, + (index) => { + if (!isMountedRef.value) { + isMountedRef.value = true; + return; + } + const indexMap = { 0: 'first', 1: 'second' }; + inputRef.value?.focus?.({ position: indexMap[index] }); + }, + { + immediate: true, + }, + ); return { year, diff --git a/test/snap/__snapshots__/ssr.test.js.snap b/test/snap/__snapshots__/ssr.test.js.snap index 1beca75d13..dde7ad3b0c 100644 --- a/test/snap/__snapshots__/ssr.test.js.snap +++ b/test/snap/__snapshots__/ssr.test.js.snap @@ -295,7 +295,7 @@ exports[`ssr snapshot test > ssr test ./src/date-picker/_example/base.vue 1`] = exports[`ssr snapshot test > ssr test ./src/date-picker/_example/custom-icon.vue 1`] = `"
-
"`; -exports[`ssr snapshot test > ssr test ./src/date-picker/_example/date-presets-alt.vue 1`] = `"
-
-
"`; +exports[`ssr snapshot test > ssr test ./src/date-picker/_example/date-presets-alt.vue 1`] = `"
-
-
"`; exports[`ssr snapshot test > ssr test ./src/date-picker/_example/date-range.vue 1`] = `"
-
-
"`;