diff --git a/packages/radix-vue/src/DateField/DateFieldRoot.vue b/packages/radix-vue/src/DateField/DateFieldRoot.vue index 6f0869607..69e535539 100644 --- a/packages/radix-vue/src/DateField/DateFieldRoot.vue +++ b/packages/radix-vue/src/DateField/DateFieldRoot.vue @@ -3,7 +3,7 @@ import { type DateValue, isEqualDay } from '@internationalized/date' import type { Ref } from 'vue' import type { PrimitiveProps } from '@/Primitive' -import { type Formatter, createContext, useDateFormatter, useDirection, useKbd } from '@/shared' +import { type Formatter, createContext, isNullish, useDateFormatter, useDirection, useKbd } from '@/shared' import { type Granularity, type HourCycle, @@ -192,12 +192,12 @@ watch(locale, (value) => { }) watch(modelValue, (_modelValue) => { - if (_modelValue !== undefined && (!isEqualDay(placeholder.value, _modelValue) || placeholder.value.compare(_modelValue) !== 0)) + if (!isNullish(_modelValue) && (!isEqualDay(placeholder.value, _modelValue) || placeholder.value.compare(_modelValue) !== 0)) placeholder.value = _modelValue.copy() }) watch([modelValue, locale], ([_modelValue]) => { - if (_modelValue !== undefined) { + if (!isNullish(_modelValue)) { segmentValues.value = { ...syncSegmentValues({ value: _modelValue, formatter }) } } else if (Object.values(segmentValues.value).every(value => value === null) || _modelValue === undefined) {