diff --git a/components/date-picker2/__tests__/index-spec.js b/components/date-picker2/__tests__/index-spec.js index 4c15e0afe5..5ea28490ae 100644 --- a/components/date-picker2/__tests__/index-spec.js +++ b/components/date-picker2/__tests__/index-spec.js @@ -919,6 +919,26 @@ describe('Picker', () => { wrapper.unmount(); wrapper = null; } + }); + // fix: https://github.com/alibaba-fusion/next/issues/3877 + it('should not select default endDate',()=>{ + const currentDate = dayjs(); + const currentDateStr = currentDate.format('YYYY-MM-DD'); + const disabledDate = function (date, mode) { + return currentDate.date() !== date.date(); + }; + wrapper = mount(); + clickDate(currentDateStr); + clickTime('12'); + clickTime('12', 'minute'); + clickTime('12', 'second'); + assert.deepEqual(getStrValue(), [`${currentDateStr} 12:12:12`, '']); + clickOk(); + clickTime('16'); + clickTime('16', 'minute'); + clickTime('35', 'second'); + clickOk(); + assert.deepEqual(getStrValue(), [`${currentDateStr} 12:12:12`, `${currentDateStr} 16:16:35`]); }); // https://github.com/alibaba-fusion/next/issues/2641 it('value controlled issue', () => { diff --git a/components/date-picker2/panels/range-panel.jsx b/components/date-picker2/panels/range-panel.jsx index 960ce5cd5f..c41eadca28 100644 --- a/components/date-picker2/panels/range-panel.jsx +++ b/components/date-picker2/panels/range-panel.jsx @@ -163,9 +163,9 @@ class RangePanel extends React.Component { if (!curDateVal) { curDateVal = inputType === BEGIN && end - ? end.subtract(1, 'day') + ? end : inputType === END && begin - ? begin.add(1, 'day') + ? begin : datejs(); } curDateVal = setTime(curDateVal, v);