TimePicker 时间选择框

如果项目中使用的是 1.x 版本的基础组件(@alifd/next),请在左侧导航顶部切换组件版本。

安装方法

  1. 在命令行中执行以下命令npm install @icedesign/base@latest -S

Guide

何时使用

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

API

时间选择框

参数说明类型默认值
prefix样式的品牌前缀String'next-'
placeholder输入框提示文案String-
defaultValue默认时间any-
value时间any-
onChange时间值改变时的回调签名:Function(date: String, formatDate: String) => void参数:date: {String} 日期值formatDate: {String} 格式化后的日期值Function() => {}
defaultOpen默认是否展开Boolean-
open展开Boolean-
onOpenChange展开状态改变时的回调签名:Function(open: Boolean) => void参数:open: {Boolean} 是否展开Function() => {}
format展示的时间格式,目前只支持 24 小时值String'HH:mm:ss'
disabled禁用全部操作Boolean-
size输入框尺寸可选值:'small', 'medium', 'large'Enum'medium'
popupStyle弹层样式Object-
popupAlign弹层对齐方式String'tl tl'
popupOffset弹层偏移Array0, 0
disabledHours禁止选择指定分小时Function() => Array签名:Function() => voidFunction-
disabledMinutes禁止选择指定分钟Function() => Array签名:Function() => voidFunction-
disabledSeconds禁止选择部分秒Function() => Array签名:Function() => voidFunction-
hasClear是否显示清空按钮Booleantrue
className自定样式名String-

代码示例

基本

最简单的用法。

TimePicker 时间选择框 - 图1

查看源码在线预览

  1. import { TimePicker } from "@icedesign/base";
  2. ReactDOM.render(
  3. <TimePicker
  4. onChange={(val, str) => console.log(val, str)}
  5. language="en-us"
  6. />,
  7. mountNode
  8. );

默认值

默认值。

TimePicker 时间选择框 - 图2

查看源码在线预览

  1. import { TimePicker } from "@icedesign/base";
  2. ReactDOM.render(<TimePicker defaultValue="11:11:11" />, mountNode);

禁用时分秒

禁用全部和禁用部分选择项

TimePicker 时间选择框 - 图3

查看源码在线预览

  1. import { TimePicker } from "@icedesign/base";
  2. function disabledHours() {
  3. return [6, 12, 18, 23];
  4. }
  5. function disabledMinutes() {
  6. return [10, 20, 30, 40, 50];
  7. }
  8. function disabledSeconds() {
  9. return [10, 20, 30, 40, 50];
  10. }
  11. ReactDOM.render(
  12. <div>
  13. <h3>禁用全部</h3>
  14. <TimePicker disabled defaultValue="11:11:11" />
  15. <h3>禁用时</h3>
  16. <TimePicker disabledHours={disabledHours} />
  17. <h3>禁用分</h3>
  18. <TimePicker disabledMinutes={disabledMinutes} />
  19. <h3>禁用秒</h3>
  20. <TimePicker disabledSeconds={disabledSeconds} />
  21. </div>,
  22. mountNode
  23. );

结合 Field 使用

配合Field使用

TimePicker 时间选择框 - 图4

查看源码在线预览

  1. import { TimePicker, Field } from "@icedesign/base";
  2. class App extends React.Component {
  3. field = new Field(this);
  4. render() {
  5. const init = this.field.init;
  6. const props = init("test-time-picker", {
  7. rules: [{ required: true, message: "具体时间点必须要选" }],
  8. initValue: "00:00:00"
  9. });
  10. return <TimePicker {...props} />;
  11. }
  12. }
  13. ReactDOM.render(<App />, mountNode);

格式化时间

例如不可选择小时,或者不可选择秒可以通过 format 属性来格式化时间,可以通过该属性来禁用某一列。

TimePicker 时间选择框 - 图5

查看源码在线预览

  1. import { TimePicker } from "@icedesign/base";
  2. ReactDOM.render(
  3. <div>
  4. <h3>不可选择秒</h3>
  5. <TimePicker format="HH:mm" />
  6. <h3>不可选择小时</h3>
  7. <TimePicker format="mm:ss" />
  8. </div>,
  9. mountNode
  10. );

尺寸

其中默认尺寸为 medium。可以通过 size 属性调整组件输入框的大小,可选值包括 large, medium, small

TimePicker 时间选择框 - 图6

查看源码在线预览

  1. import { TimePicker } from "@icedesign/base";
  2. ReactDOM.render(
  3. <div>
  4. <h3>大号</h3>
  5. <TimePicker size="large" />
  6. <h3>中号</h3>
  7. <TimePicker />
  8. <h3>小号</h3>
  9. <TimePicker size="small" />
  10. </div>,
  11. mountNode
  12. );

相关区块

TimePicker 时间选择框 - 图7

暂无相关区块