2015-02-16 2 views
0

Использования nodejs, нефрита и moment.jsОтображение неточной даты с помощью moment.js

<div class="post-date"> #{entry.published_at} </div> 

Каждый раз, когда пользователь создает запись и дата публикации обновляется. Это динамично.

Пример: Сырая дата показывает «Чт 1 января 2015 г. 08:00:00 GMT + 0800 (SGT)» На веб-странице, преобразующей необработанную дату с импульсами, так что отображается только 01 января 2015 года.

Script

$('.post-date').each(function(i, e) { 
     var date = $(this).text(); 
     $(this).html(moment(date).format("DD MMMM YYYY")); 
    }); 

Но это показывает неверную дату, например: 2 января 2015.

не мог понять, почему она отображает неверную дату.

Помогите оценить.

+0

Возможно, часовой пояс? :) –

+0

Вы говорите, что 'entry.published_at' является объектом' Date'? Если это так, вы разбираете его как строку, когда вы создаете «момент». Вы должны просто форматировать его, а не переинтерпретировать его. –

+0

@MattJohnson да, это объект Date на backend с моментом js. О, так вы подразумеваете, что publish_at должен быть отформатирован на бэкэнд? – joe

ответ

0

@MattJohnson - предложил вместо форматирования даты разбора.

-1

Возможно, это может быть из-за часового пояса.

Посмотрите на эту ссылку: http://momentjs.com/timezone/

+0

ах это значит, мне нужно также изменить часовой пояс? – joe

+0

Попробуйте;) –

+0

Хорошо, я сначала прочитал документ. спасибо за ссылку – joe

Смежные вопросы