diff --git a/src/RangePicker.tsx b/src/RangePicker.tsx index fae8f42d3..8fa17c2b1 100644 --- a/src/RangePicker.tsx +++ b/src/RangePicker.tsx @@ -73,7 +73,7 @@ function canValueTrigger( return true; } - if (disabled[(index + 1) % 2]) { + if (disabled[(index+1) % 2]) { return true; } @@ -394,6 +394,8 @@ function InnerRangePicker(props: RangePickerProps) { } function triggerChange(newValue: RangeValue, sourceIndex: 0 | 1) { + if(mergedDisabled[sourceIndex]) + return let values = newValue; let startValue = getValue(values, 0); let endValue = getValue(values, 1); @@ -447,7 +449,6 @@ function InnerRangePicker(props: RangePickerProps) { const canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty); const canTrigger = values === null || (canStartValueTrigger && canEndValueTrigger); - if (canTrigger) { // Trigger onChange only when value is validate setInnerValue(values); @@ -539,6 +540,8 @@ function InnerRangePicker(props: RangePickerProps) { }); const onDateMouseEnter = (date: DateType) => { + if(mergedDisabled[mergedActivePickerIndex]) + return setHoverRangedValue(updateValues(selectedValue, date, mergedActivePickerIndex)); if (mergedActivePickerIndex === 0) { onStartEnter(date); @@ -548,6 +551,8 @@ function InnerRangePicker(props: RangePickerProps) { }; const onDateMouseLeave = () => { + if(mergedDisabled[mergedActivePickerIndex]) + return setHoverRangedValue(updateValues(selectedValue, null, mergedActivePickerIndex)); if (mergedActivePickerIndex === 0) { onStartLeave(); diff --git a/tests/__snapshots__/range.spec.tsx.snap b/tests/__snapshots__/range.spec.tsx.snap index 43bc750bc..820a81c6f 100644 --- a/tests/__snapshots__/range.spec.tsx.snap +++ b/tests/__snapshots__/range.spec.tsx.snap @@ -136,7 +136,7 @@ exports[`Picker.Range panelRender 1`] = `