diff --git a/packages/vant/src/slider/Slider.tsx b/packages/vant/src/slider/Slider.tsx index 3125eebb9..784460070 100644 --- a/packages/vant/src/slider/Slider.tsx +++ b/packages/vant/src/slider/Slider.tsx @@ -130,17 +130,17 @@ export default defineComponent({ const isSameValue = (newValue: SliderValue, oldValue: SliderValue) => JSON.stringify(newValue) === JSON.stringify(oldValue); - // 处理两个滑块重叠之后的情况 - const handleOverlap = (value: NumberRange) => { - if (value[0] > value[1]) { - return value.slice(0).reverse(); - } - return value; + const handleRangeValue = (value: NumberRange) => { + // 设置默认值 + const left = value[0] ?? Number(props.min); + const right = value[1] ?? Number(props.max); + // 处理两个滑块重叠之后的情况 + return left > right ? [right, left] : [left, right]; }; const updateValue = (value: SliderValue, end?: boolean) => { if (isRange(value)) { - value = handleOverlap(value).map(format) as NumberRange; + value = handleRangeValue(value).map(format) as NumberRange; } else { value = format(value); }