0.0.2 • Published 5 years ago

xa-date-picker v0.0.2

Weekly downloads
-
License
MIT
Repository
-
Last release
5 years ago

XaDatePicker

包含以下三个组件:DatePicker、MonthPicker、RangePicker

Date Picker & Month Picker

引用

import DatePicker from 'xa-date-picker';

const {MonthPicker,RangePicker} = DatePicker;

使用示例

        <div>
            <label>基本用法:</label>
            <DatePicker placeholder="基本用法" onChange={this.onChange} />
        </div>
        <div>
          <label>format:</label>
          <DatePicker placeholder="format" format={dateFormat} />
        </div>
        <div>
          <label>禁用状态:</label>
          <DatePicker placeholder="禁用状态" disabled />
        </div>
        <div>
          <label>禁止选择部分日期:</label>
          <DatePicker placeholder="禁止选择部分日期" disabledDate={this.disabledDate} />
        </div>
        <div>
          <label>extra footer:</label>
          <DatePicker placeholder="extra footer" renderExtraFooter={() => 'extra footer'} />
        </div> 

        <div>
          <label>快捷操作:</label>
          <DatePicker
            placeholder="请选择日期"
            onClick={() => this.setState({ open2: true })}
            onChange={this.onChange}
            value={this.state.value2}
            open={this.state.open2}
            shortcuts={[{
              text: '今天',
              onClick: (picker) => {
                this.setState({
                  value2: moment(new Date()),
                  open2: false
                })
              }
            }, {
              text: '昨天',
              onClick: (picker) => {
                const date = new Date();
                date.setTime(date.getTime() - 3600 * 1000 * 24);
                this.setState({
                  value2: moment(date),
                  open2: false
                })
              }
            }, {
              text: '一周前',
              onClick: (picker) => {
                const date = new Date();
                date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
                this.setState({
                  value2: moment(date),
                  open2: false
                })
              }
            }]}
          />
        </div>

Props

参数说明类型默认值
allowClear是否显示清除按钮booleantrue
className类名string
dateRender自定义日期单元格的内容function(currentDate: moment, today: moment) => React.ReactNode-
defaultValue默认日期moment-
disabled禁用状态booleanfalse
disabledDate禁用的日期function(moment):boolean-
format展示的日期格式string"YYYY-MM-DD"
shortcuts快捷[]-
showTime时间选择"YYYY-MM-DD"
showTime.defaultValue默认时间moment
disabledTime禁用的时间function(moment):boolean
locale国际化配置,注意需要先设置 moment 的 localezhCN
openpicker 展开状态boolean-
onOpenChangepicker 展开状态变化触发function(boolean)-
placeholder占位符string

Range Picker

使用示例

<RangePicker
  selectedValue={this.state.value}
  startPlaceholder="请选择开始日期"
  endPlaceholder="请选择结束日期"
  shortcuts={[{
    text: '本周',
    onClick: (picker) => {
      const date = new Date();
      date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
      this.setState({
        value: [moment(date), moment(new Date())]
      })
    }
  }]}
/>

Props

RangePicker 的大多数参数与 DatePicker 相同,但需要注意的是其 valuemoment[]