「react-mobile-datepicker」一个移动端的react日期选择器组件

react-mobile-datepicker

一个轻量级的react移动端日期选择器,不依赖于moment.js, 只有不到4k大小。

react-mobile-datepicker可以通过上下滑动来设置年、月、日。

ps: demo在模拟的移动端可上下滑动触发touch事件。
这里先把它分享给大家,欢迎 star ,欢迎试用!

《「react-mobile-datepicker」一个移动端的react日期选择器组件》

开始使用

使用 npm:

$ npm install react-mobile-datepicker --save

导入你想要的

下面的指导假设你已经使用ES2015构建安装,使用babel或webpack/browserify/gulp/grunt等。

// 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'));

组件属性

名称类型默认描述
isOpenBooleanfalse是否弹出日期选择框
themeStringdefaultdatepicker的主题, 包括 ‘default’, ‘dark’, ‘ios’, ‘android’, ‘android-dark’
dateFormatArray[‘YYYY’, ‘M’, ‘D’]根据指定的年,月,日格式显示日期。例如 [‘YYYY年’, ‘MM月’, ‘DD日’]
valueDatenew Date()当前日期的值
minDatenew Date(1970, 0, 1)最小日期
maxDatenew Date(2050, 0, 1)最大日期
onSelectFunction() => {}点击完成按钮后的回调函数, 当前的日期作为参数
onCancelFunction() => {}点击取消按钮后的回调函数

最后,诚挚邀请大家pull requests代码。不断完善国内的前端大业。

    原文作者:rainie
    原文地址: https://segmentfault.com/a/1190000006889718
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞