Skip to content

Commit e22eb3f

Browse files
committed
feat: add onOk back
1 parent 50c9900 commit e22eb3f

File tree

2 files changed

+20
-9
lines changed

2 files changed

+20
-9
lines changed

src/RangePicker.tsx

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ export interface RangePickerSharedProps<DateType> {
104104
) => void;
105105
onFocus?: React.FocusEventHandler<HTMLInputElement>;
106106
onBlur?: React.FocusEventHandler<HTMLInputElement>;
107+
onOk?: () => void;
107108

108109
/** @private Internal usage. Do not use in your production env */
109110
components?: {
@@ -206,6 +207,7 @@ function InnerRangePicker<DateType>(props: RangePickerProps<DateType>) {
206207
onCalendarChange,
207208
onFocus,
208209
onBlur,
210+
onOk,
209211
components,
210212
} = props as MergedRangePickerProps<DateType>;
211213

@@ -831,13 +833,16 @@ function InnerRangePicker<DateType>(props: RangePickerProps<DateType>) {
831833
})}
832834

833835
{showTime && (
834-
<li
835-
className={`${prefixCls}-ok`}
836-
onClick={() => {
837-
triggerChange(selectedValue);
838-
}}
839-
>
840-
<Button disabled={!getValue(selectedValue, activePickerIndex)}>
836+
<li className={`${prefixCls}-ok`}>
837+
<Button
838+
disabled={!getValue(selectedValue, activePickerIndex)}
839+
onClick={() => {
840+
triggerChange(selectedValue);
841+
if (onOk) {
842+
onOk();
843+
}
844+
}}
845+
>
841846
{locale.ok}
842847
</Button>
843848
</li>

tests/range.spec.tsx

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -714,8 +714,13 @@ describe('Picker.Range', () => {
714714

715715
it('datetime display ok button', () => {
716716
const onCalendarChange = jest.fn();
717+
const onOk = jest.fn();
717718
const wrapper = mount(
718-
<MomentRangePicker showTime onCalendarChange={onCalendarChange} />,
719+
<MomentRangePicker
720+
showTime
721+
onCalendarChange={onCalendarChange}
722+
onOk={onOk}
723+
/>,
719724
);
720725
wrapper.openPicker();
721726

@@ -725,10 +730,11 @@ describe('Picker.Range', () => {
725730
// Trigger when valued
726731
onCalendarChange.mockReset();
727732
wrapper.selectCell(11);
728-
wrapper.find('.rc-picker-ok').simulate('click');
733+
wrapper.find('.rc-picker-ok button').simulate('click');
729734
expect(onCalendarChange).toHaveBeenCalledWith(
730735
[expect.anything(), null],
731736
['1990-09-11 00:00:00', ''],
732737
);
738+
expect(onOk).toHaveBeenCalled();
733739
});
734740
});

0 commit comments

Comments
 (0)