Skip to content

Commit 123c0b2

Browse files
authored
fix: RangePicker.defaultPickerValue has no effect if showTime is set (#291)
1 parent e562185 commit 123c0b2

File tree

3 files changed

+19
-5
lines changed

3 files changed

+19
-5
lines changed

src/PickerPanel.tsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,8 @@ export type PickerPanelDateProps<DateType> = {
101101

102102
export type PickerPanelTimeProps<DateType> = {
103103
picker: 'time';
104-
} & PickerPanelSharedProps<DateType> & SharedTimeProps<DateType>;
104+
} & PickerPanelSharedProps<DateType> &
105+
SharedTimeProps<DateType>;
105106

106107
export type PickerPanelProps<DateType> =
107108
| PickerPanelBaseProps<DateType>
@@ -208,12 +209,16 @@ function PickerPanel<DateType>(props: PickerPanelProps<DateType>) {
208209
// When value is null and set showTime
209210
if (!mergedValue && showTime) {
210211
if (typeof showTime === 'object') {
211-
return setDateTime(generateConfig, date, showTime.defaultValue || now);
212+
return setDateTime(
213+
generateConfig,
214+
Array.isArray(date) ? date[0] : date,
215+
showTime.defaultValue || now,
216+
);
212217
}
213218
if (defaultValue) {
214-
return setDateTime(generateConfig, date, defaultValue);
219+
return setDateTime(generateConfig, Array.isArray(date) ? date[0] : date, defaultValue);
215220
}
216-
return setDateTime(generateConfig, date, now);
221+
return setDateTime(generateConfig, Array.isArray(date) ? date[0] : date, now);
217222
}
218223
return date;
219224
},

src/RangePicker.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -848,7 +848,7 @@ function InnerRangePicker<DateType>(props: RangePickerProps<DateType>) {
848848
defaultValue={
849849
mergedActivePickerIndex === 0 ? getValue(selectedValue, 1) : getValue(selectedValue, 0)
850850
}
851-
defaultPickerValue={undefined}
851+
// defaultPickerValue={undefined}
852852
/>
853853
</RangeContext.Provider>
854854
);

tests/range.spec.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,16 @@ describe('Picker.Range', () => {
3131

3232
matchValues(wrapper, '1989-11-28', '1990-09-03');
3333
});
34+
it('defaultPickerValue with showTime', () => {
35+
const startDate = getMoment('1982-02-12');
36+
const endDate = getMoment('1982-02-12');
3437

38+
const wrapper = mount(
39+
<MomentRangePicker defaultPickerValue={[startDate, endDate]} showTime />,
40+
);
41+
wrapper.openPicker();
42+
expect(wrapper.find('.rc-picker-year-btn').first().text()).toEqual(startDate.format('YYYY'));
43+
});
3544
it('controlled', () => {
3645
const wrapper = mount(
3746
<MomentRangePicker value={[getMoment('1989-11-28'), getMoment('1990-09-03')]} />,

0 commit comments

Comments
 (0)