date-picker-react

1.0.2 • Public • Published

date-picker-react

A react date picker control

Installation

npm install date-picker-react

Demo

demo

Usage

import DatePanel,{SinglePicker,RangePicker} from 'DatePicker';
var Me = React.createClass({
    getInitialState() {
        return { date:new Date()};
    },
    render(){
        return <SinglePicker
            type={'date'}
            value={this.state.date}
            onChange={date=>this.setState({date:date})}
        />
    }
});
 
dom.render(<Me />, document.getElementById('container'));

Single Picker Props

Name Type Description
type string 'date','week','month','year'
value Date selected date
onChange Function callback,用户点击确定按钮时触发, 1 param:the date
style Object css style to be used on the component
verify Function 用于指定可选日期。具体见下方'verify'小节

Range Picker Props

Name Type Description
type string 'date','week','month','year'
from Date when the time range starts
to Date when the time range ends
onChange Function callback,用户点击确定按钮时触发, 2 param2:from,to(type:date)
style Object css style to be used on the component
verify Function 用于指定可选日期。具体见下方'verify'小节
onError Function callback to handle errors

DatePanel Props

Name Type Description
type string 'date','week','month','year'
value Date selected date
onChange Function callback,用户点击任意日期时触发, 1 param:the date
style Object css style to be used on the component
position string 'from','to','single'。用于指定面板类型,是开始日期还是结束日期还是独立日期
onCancel Function callback,当用户点击取消按钮时触发
onConfirm Function callback,当用户点击确定按钮时触发
verify Function 用于指定可选日期。具体见下方'verify'小节

The 'verify' Function

  • 它用来指定可选日期,如果未被指定,则所有的日期都可选
  • 它会在渲染时被多次调用,每一个可选日期格子被渲染时都会来询问是否可选
  • 下面的样例代码中的控件,将只允许2015-4-14 ~ 2016-6-14日之间的日期被选择。可以加入更复杂的逻辑以支持更复杂的可选时间段。比如额外判定某特定日期也可以被选择。
<SinglePicker
    type={'date'}
    verify={(date,type)=>
                new Date(2015,3,14).getTime()<= date.getTime()
                && date.getTime() <= new Date(2016,5,14).getTime()
            }
    ....
  • 它有两个参数,第一个Date类型,用于判断是否可选
  • 第二个参数string类型,type,即'date','week','month','year'
  • 第二个参数用于帮助判断当前日期是否可用,因为对于像'year'这样的类型,收到的日期将是那年的第一天,而你手里用来比较的日期可能是年内的某一段时间,这样日期就会落在范围外。但实际上该年应该可选。这需要额外的处理才能正确工作。而这些处理需要依赖控件类型。

Readme

Keywords

none

Package Sidebar

Install

npm i date-picker-react

Weekly Downloads

0

Version

1.0.2

License

ISC

Last publish

Collaborators

  • superddr