为了账号安全,请及时绑定邮箱和手机立即绑定

从 React Datetime 中的日期数组中获取特定日期

从 React Datetime 中的日期数组中获取特定日期

湖上湖 2022-07-21 10:16:37
有谁知道我如何将一组日期传递给 react-datetime?我正在尝试实现一个日期选择器,它可以显示我所在州的“预订”日期,但目前我只设法禁用当前日期之前的所有日期。那么如何将我所在州的日期传递给<Datetime/>,以禁用它们? 'use strict';import React       from 'react';import {PropTypes} from 'prop-types';import Datetime    from 'react-datetime';class DatePicker extends React.Component {    constructor(props) {        super(props);        this.state = {            dates: [{id: 1, date: 'Apr 30 2020 09:00:00 AM'}, {id: 2, date: 'May 1 2020 12:00:00 PM'}]        };    }    render() {        const {t} = this.props;        let yesterday = Datetime.moment().subtract(1, 'day');        let valid = function (current) {            return current.isAfter(yesterday);        };        return (            <div className="date-picker">                <p>{t('Date Picker')}</p>                <Datetime timeFormat={false} isValidDate={valid(yesterday)}/>            </div>        );    }}export default DatePicker;
查看完整描述

1 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

首先,您的状态日期格式有问题。尝试使用时刻设置您的日期


this.state = {

   dates: [{

    id: 1,

    date: Datetime.moment("30 Apr 2020")

  },

  {

    id: 2,

    date: Datetime.moment("01 May 2020")

  }]

}

您的验证函数应该看起来像这样,或者您可以将其提取到类方法中


  let valid = function(current, selected) {

    return !this.state.dates.some(day => current.isSame(day.date, "day"));

  };

并将此函数传递给 Datetime


<Datetime timeFormat={false} isValidDate={valid}/>


查看完整回答
反对 回复 2022-07-21
  • 1 回答
  • 0 关注
  • 219 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号