File tree Expand file tree Collapse file tree 2 files changed +20
-9
lines changed Expand file tree Collapse file tree 2 files changed +20
-9
lines changed Original file line number Diff line number Diff 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 >
Original file line number Diff line number Diff 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} ) ;
You can’t perform that action at this time.
0 commit comments