角度滤波器是日期时间格式

时间:2015-04-09 19:29:15

标签: angularjs

我有角度过滤器并且始终显示来自json的错误时间是' 2015-04-09T16:30:00'问题是它显示时间2015-04-09 12:30 PM关闭4小时的正确时间 我怎样才能显示核心时间?

app.filter('formatDateAndTime', function () {
    return function (input){
        if (moment.utc(input).local().format('MM/DD/YYYY hh:mm ') === 'Invalid date')
            return ' ';
        else
            return moment.utc(input).local().format('MM/DD/YYYY hh:mm ');
    };
});

2 个答案:

答案 0 :(得分:1)

moment.utc(x)调用将输入解释为UTC时间,然后 .local()以本地时区输出它,这是4小时关闭。< / p> 哎呀,我错过了关于同时获得的部分问题。请参阅Ben Whitney's answer(使用时刻(输入)而不是 moment.utc(输入)

答案 1 :(得分:1)

正如David所说,你不想使用UTC。

使用moment(x)而不是moment.utc(x)。

所以你的代码是:

app.filter('formatDateAndTime', function () {
    return function (input){
        if (moment(input).local().format('MM/DD/YYYY hh:mm ') === 'Invalid date')
        return ' ';
        else
            return moment(input).local().format('MM/DD/YYYY hh:mm ');
    };
});