2017-03-06 121 views
0

我有我在我的终极版形式使用DateInput组件使用日期选择器比较两个日期:在反应 - 终极版

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函数,但它没有工作

回答

2

这个问题是无关redux-form。这只是一个通用的日期比较问题。时刻可以为你做到。你只需要弄清楚如何。

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

我忘记给第二个参数添加时间了。非常感谢 :) – user7334203

2

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

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

+0

感谢您的回应Andrew!但是我有一个更复杂的任务。我必须验证两个日期之间的差异应该是最大的一年 – user7334203