片刻:比较两个日期错误的结果

时间:2018-05-27 16:18:11

标签: angularjs momentjs angular-ui-grid ui-grid

我试图在UI-GRID中比较两个日期,最后我有两个正确格式的日期,但它不起作用,总是给我一个错误的结果。

代码如下:

filters: [{
    condition: function (term, value) {
        if (!term) return true;
        var valueDate = moment.utc(value).format(CONST.LANGUAJE.dateformat);
        var replaced = term.replace(/\\/g, '');
        var termDate = moment.utc(replaced, CONST.LANGUAJE.dateformat).format(CONST.LANGUAJE.dateformat); // moment(replaced).format(CONST.LANGUAJE.dateformat); // new Date(replaced);
        console.log('valueDate >= termDate: ' + valueDate + '>=' + termDate + ' moment result: ' + moment(valueDate).isAfter(termDate));
        return moment(valueDate).isAfter(termDate); // valueDate >= termDate;
    },
    placeholder: 'greatter than'
},

在控制台日志中我有这个:

valueDate >= termDate: 16/09/2022>=23/01/2011 moment result: false
woControllerPreventive.js:97 valueDate >= termDate: 16/09/2025>=23/01/2011 
moment result: false
woControllerPreventive.js:97 valueDate >= termDate: 16/09/2020>=23/01/2011 
moment result: false
woControllerPreventive.js:97 valueDate >= termDate: 16/11/2010>=23/01/2011 
moment result: false
woControllerPreventive.js:97 valueDate >= termDate: 16/09/2022>=23/01/2011 
moment result: false
woControllerPreventive.js:97 valueDate >= termDate: 16/09/2021>=23/01/2011 
moment result: false
4woControllerPreventive.js:97 valueDate >= termDate: 16/09/2020>=23/01/2011 
moment result: false
3woControllerPreventive.js:97 valueDate >= termDate: 16/09/2019>=23/01/2011 
moment result: false

Obviosuly 16/09/2025> = 23/01/2011这是真的,但我不知道为什么不工作。

1 个答案:

答案 0 :(得分:0)

仅适用于该格式 moment('2010-10-20').isAfter('2010-10-19'); // true

请参阅:https://momentjs.com/docs/#/query/is-after/