logoNamu Design

⌘ K
  • 设计
  • 研发
  • 组件
  • 博客
  • 资源
  • 国内镜像
1.0.0
  • 组件总览
  • 通用
    • Button按钮
    • FloatButton悬浮按钮New
    • Icon图标
    • Typography排版
  • 布局
    • Divider分割线
    • Grid栅格
    • Layout布局
    • Space间距
  • 导航
    • Anchor锚点
    • Breadcrumb面包屑
    • Dropdown下拉菜单
    • Menu导航菜单
    • Pagination分页
    • Steps步骤条
  • 数据录入
    • AutoComplete自动完成
    • Cascader级联选择
    • Checkbox多选框
    • ColorPicker颜色选择器New
    • DatePicker日期选择框
    • Form表单
    • Input输入框
    • InputNumber数字输入框
    • Mentions提及
    • Radio单选框
    • Rate评分
    • Select选择器
    • Slider滑动输入条
    • Switch开关
    • TimePicker时间选择框
    • Transfer穿梭框
    • TreeSelect树选择
    • Upload上传
  • 数据展示
    • Avatar头像
    • Badge徽标数
    • Calendar日历
    • Card卡片
    • Carousel走马灯
    • Collapse折叠面板
    • Descriptions描述列表
    • Empty空状态
    • Image图片
    • List列表
    • Popover气泡卡片
    • QRCode二维码New
    • Segmented分段控制器
    • Statistic统计数值
    • Table表格
    • Tabs标签页
    • Tag标签
    • Timeline时间轴
    • Tooltip文字提示
    • Tour漫游式引导New
    • Tree树形控件
  • 反馈
    • Alert警告提示
    • Drawer抽屉
    • Message全局提示
    • Modal对话框
    • Notification通知提醒框
    • Popconfirm气泡确认框
    • Progress进度条
    • Result结果
    • Skeleton骨架屏
    • Spin加载中
    • Watermark水印New
  • 其他
    • Affix固钉
    • App包裹组件New
    • ConfigProvider全局化配置
何时使用
代码演示
基本
受控组件
三种大小
禁用
选择时分
步长选项
附加内容
12 小时制
范围选择器
无边框
自定义状态
API
方法
RangePicker
RangeDisabledTime
Design Token
FAQ

TimePicker
时间选择框

  • Switch开关Transfer穿梭框

    相关资源

    Namu Design Charts
    Namu Design Pro
    Namu Design Pro Components
    Namu Design Mobile
    Namu Design Mini
    Namu Design Landing-首页模板集
    Scaffolds-脚手架市场
    Umi-React 应用开发框架
    dumi-组件/文档研发工具
    qiankun-微前端框架
    ahooks-React Hooks 库
    Ant Motion-设计动效
    国内镜像站点 🇨🇳

    社区

    Awesome Namu Design
    Medium
    Twitter
    yuqueNamu Design 语雀专栏
    Namu Design 知乎专栏
    体验科技专栏
    seeconfSEE Conf-蚂蚁体验科技大会
    加入我们

    帮助

    GitHub
    更新日志
    常见问题
    报告 Bug
    议题
    讨论区
    StackOverflow
    SegmentFault

    Ant XTech更多产品

    yuque语雀-构建你的数字花园
    AntVAntV-数据可视化解决方案
    EggEgg-企业级 Node.js 框架
    kitchenKitchen-Sketch 工具集
    xtech蚂蚁体验科技
    主题编辑器
    Made with ❤ by
    蚂蚁集团和 Namu Design 开源社区

    输入或选择时间的控件。

    何时使用

    当用户需要输入一个时间,可以点击标准输入框,弹出时间面板进行选择。

    代码演示

    基本

    点击 TimePicker,然后可以在浮层中选择或者输入某一时间。

    expand codeexpand code
    三种大小

    三种大小的输入框,大的用在表单中,中的为默认。

    expand codeexpand code
    选择时分

    TimePicker 浮层中的列会随着 format 变化,当略去 format 中的某部分时,浮层中对应的列也会消失。

    expand codeexpand code
    附加内容

    在 TimePicker 选择框底部显示自定义的内容。

    expand codeexpand code
    范围选择器

    通过 TimePicker.RangePicker 使用时间范围选择器。

    expand codeexpand code
    自定义状态

    使用 status 为 TimePicker 添加状态,可选 error 或者 warning。

    expand codeexpand code
    受控组件

    value 和 onChange 需要配合使用。

    expand codeexpand code
    禁用

    禁用时间选择。

    expand codeexpand code
    步长选项

    可以使用 hourStep minuteStep secondStep 按步长展示可选的时分秒。

    expand codeexpand code
    12 小时制

    12 小时制的时间选择器,默认的 format 为 h:mm:ss a。

    expand codeexpand code
    无边框

    无边框样式。

    expand codeexpand code

    API


    通用属性参考:通用属性

    import dayjs from 'dayjs';
    import customParseFormat from 'dayjs/plugin/customParseFormat'
    dayjs.extend(customParseFormat)
    <TimePicker defaultValue={dayjs('13:30:56', 'HH:mm:ss')} />;
    参数说明类型默认值版本
    allowClear自定义清除按钮boolean | { clearIcon?: ReactNode }true5.8.0: 支持对象类型
    autoFocus自动获取焦点booleanfalse
    bordered是否有边框booleantrue
    cellRender自定义单元格的内容(current: number, info: { originNode: React.ReactNode, today: dayjs, range?: 'start' | 'end', subType: 'hour' | 'minute' | 'second' | 'meridiem' }) => React.ReactNode-5.4.0
    changeOnBlur失去焦点时触发 change 事件,例如 datetime 下不再需要点击确认按钮booleanfalse5.5.0
    className选择器类名string-
    clearIcon自定义的清除图标ReactNode-
    clearText清除按钮的提示文案stringclear
    defaultValue默认时间dayjs-
    disabled禁用全部操作booleanfalse
    disabledTime不可选择的时间DisabledTime-4.19.0
    format展示的时间格式stringHH:mm:ss
    getPopupContainer定义浮层的容器,默认为 body 上新建 divfunction(trigger)-
    hideDisabledOptions隐藏禁止选择的选项booleanfalse
    hourStep小时选项间隔number1
    inputReadOnly设置输入框为只读(避免在移动设备上打开虚拟键盘)booleanfalse
    minuteStep分钟选项间隔number1
    open面板是否打开booleanfalse
    placeholder没有值的时候显示的内容string | [string, string]请选择时间
    placement选择框弹出的位置bottomLeft bottomRight topLeft topRightbottomLeft
    popupClassName弹出层类名string-
    popupStyle弹出层样式对象object-
    renderExtraFooter选择框底部显示自定义的内容() => ReactNode-
    secondStep秒选项间隔number1
    showNow面板是否显示“此刻”按钮boolean-4.4.0
    size输入框大小,large 高度为 40px,small 为 24px,默认是 32pxlarge | middle | small-
    status设置校验状态'error' | 'warning'-4.19.0
    suffixIcon自定义的选择框后缀图标ReactNode-
    use12Hours使用 12 小时制,为 true 时 format 默认为 h:mm:ss abooleanfalse
    value当前时间dayjs-
    onChange时间发生变化的回调function(time: dayjs, timeString: string): void-
    onOpenChange面板打开/关闭时的回调(open: boolean) => void-

    DisabledTime

    type DisabledTime = (now: Dayjs) => {
    disabledHours?: () => number[];
    disabledMinutes?: (selectedHour: number) => number[];
    disabledSeconds?: (selectedHour: number, selectedMinute: number) => number[];
    };

    方法

    名称描述版本
    blur()移除焦点
    focus()获取焦点

    RangePicker

    属性与 DatePicker 的 RangePicker 相同。还包含以下属性:

    参数说明类型默认值版本
    disabledTime不可选择的时间RangeDisabledTime-4.19.0
    order始末时间是否自动排序booleantrue4.1.0

    RangeDisabledTime

    type RangeDisabledTime = (
    now: Dayjs,
    type = 'start' | 'end',
    ) => {
    disabledHours?: () => number[];
    disabledMinutes?: (selectedHour: number) => number[];
    disabledSeconds?: (selectedHour: number, selectedMinute: number) => number[];
    };

    Design Token

    组件 Token

    全局 Token

    FAQ

    • 如何在 TimePicker 中使用自定义日期库(如 Moment.js )