一个轻量级的react移动端日期选择器,不依赖于moment.js, 只有不到4k大小。前端
react-mobile-datepicker
能够经过上下滑动来设置年、月、日。react
ps: demo在模拟的移动端可上下滑动触发touch事件。
这里先把它分享给你们,欢迎 star ,欢迎试用!ios
使用 npm:git
$ npm install react-mobile-datepicker --save
下面的指导假设你已经使用ES2015构建安装,使用babel或webpack/browserify/gulp/grunt等。github
// Using an ES6 transpiler like Babel import React from 'react'; import ReactDOM from 'react-dom'; import DatePicker from 'react-mobile-datepicker';
class App extends React.Component { state = { time: new Date(), isOpen: false, } handleClick = () => { this.setState({ isOpen: true }); } handleCancel = () => { this.setState({ isOpen: false }); } handleSelect = (time) => { this.setState({ time, isOpen: false }); } render() { return ( <div className="App"> <a className="select-btn" onClick={this.handleClick}> select time </a> <p className="select-time "> {this.state.time} </p> <DatePicker value={this.state.time} isOpen={this.state.isOpen} onSelect={this.handleSelect} onCancel={this.handleCancel} /> </div> ); } } ReactDOM.render(<App />, document.getElementById('react-box'));
名称 | 类型 | 默认 | 描述 |
---|---|---|---|
isOpen | Boolean | false | 是否弹出日期选择框 |
theme | String | default | datepicker的主题, 包括 'default', 'dark', 'ios', 'android', 'android-dark' |
dateFormat | Array | ['YYYY', 'M', 'D'] | 根据指定的年,月,日格式显示日期。例如 ['YYYY年', 'MM月', 'DD日'] |
value | Date | new Date() | 当前日期的值 |
min | Date | new Date(1970, 0, 1) | 最小日期 |
max | Date | new Date(2050, 0, 1) | 最大日期 |
onSelect | Function | () => {} | 点击完成按钮后的回调函数, 当前的日期做为参数 |
onCancel | Function | () => {} | 点击取消按钮后的回调函数 |
最后,诚挚邀请你们pull requests
代码。不断完善国内的前端大业。web