【问题标题】:Compare two dates using datepicker in react-redux在 react-redux 中使用 datepicker 比较两个日期
【发布时间】:2017-03-06 12:58:29
【问题描述】:

我有一个 DateInput 组件,我在我的 redux 表单中使用它:

const MyDatePicker = ({ input, meta: { touched, error } }) => (
  <div>
    <DatePicker
      {...input} dateFormat="DD-MM-YYYY"
      selected={input.value ? moment(input.value, 'DD-MM-YYYY') : null}
    />
    {touched && error && <span>{error}</span>}
  </div>
);

如何比较这个组件产生的两个日期?我正在尝试来自 moment.js 的 isAfter 函数,但它没有工作

【问题讨论】:

    标签: reactjs datepicker comparison redux-form


    【解决方案1】:

    此问题与redux-form 无关。这只是一个一般的日期比较问题。 Moment 可以为您做到。你只需要弄清楚怎么做。

    const withinAYear = moment(start).add(1, 'year').isAfter(moment(end))
    

    【讨论】:

    • 我忘记在第二个参数中添加时刻。非常感谢:)
    【解决方案2】:

    要比较两个日期对象,您可以将日期转换为 Unix 时间戳。 Unix 时间戳,它是从 1970 年 1 月 1 日开始的秒数(毫秒)。您将有两个 int,您可以简单地比较它们。

    https://momentjs.com/docs/#/displaying/unix-timestamp/

    【讨论】:

    • 感谢您的回复,安德鲁!但我有一个更复杂的任务。我必须验证两个日期之间的差异应该是最大一年
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-30
    相关资源
    最近更新 更多