diff --git a/docs/examples/debug.tsx b/docs/examples/debug.tsx index 98fa51e1a..45c3c63fe 100644 --- a/docs/examples/debug.tsx +++ b/docs/examples/debug.tsx @@ -151,6 +151,7 @@ export default () => { {...sharedLocale} // picker="week" // multiple + format="YYYY-MM-DD" showTime defaultValue={[ dayjs(), diff --git a/src/hooks/useTimeInfo.ts b/src/hooks/useTimeInfo.ts index 2af60fe19..ba867cbc0 100644 --- a/src/hooks/useTimeInfo.ts +++ b/src/hooks/useTimeInfo.ts @@ -1,9 +1,9 @@ import { warning } from 'rc-util'; import * as React from 'react'; import type { GenerateConfig } from '../generate'; -import { leftPad } from '../utils/miscUtil'; import type { DisabledTimes, SharedTimeProps } from '../interface'; import { findValidateTime } from '../PickerPanel/TimePanel/TimePanelBody/util'; +import { leftPad } from '../utils/miscUtil'; export type Unit = { label: React.ReactText; @@ -96,7 +96,7 @@ export default function useTimeInfo( } // ========================== Show ========================== - let mergedShowHour = checkShow(format, ['H', 'LT', 'LLL'], showHour); + let mergedShowHour = checkShow(format, ['H', 'h', 'k', 'LT', 'LLL'], showHour); let mergedShowMinute = checkShow(format, ['m', 'LT', 'LLL'], showMinute); let mergedShowSecond = checkShow(format, ['s', 'LTS'], showSecond); const mergedShowMillisecond = checkShow(format, ['SSS'], showMillisecond); diff --git a/tests/picker.spec.tsx b/tests/picker.spec.tsx index 214451bd4..cdc624294 100644 --- a/tests/picker.spec.tsx +++ b/tests/picker.spec.tsx @@ -1319,4 +1319,13 @@ describe('Picker.Basic', () => { expect.anything(), ); }); + + it('showTime kk format', () => { + const { container } = render( + , + ); + expect(container.querySelector('input')).toHaveValue('24:23'); + + expect(document.querySelectorAll('.rc-picker-time-panel-column')).toHaveLength(2); + }); });