2014-11-17 3 views
2

Я не мог найти аналогичный вопрос, так что вот оно: Moment.js, похоже, не понимает месяцы на другом языке, кроме английского, при создании формы.moment.js date to timestamp интернационализация (немецкий)

Moment.js с локалей находится в активах, и когда я пытаюсь следующее:

moment('1. März 2014').format('LLLL'); 
"Invalid date" 

с другой стороны, это работает:

moment('1. March 2014').format('LLLL'); 
"Samstag, 1. März 2014 00:00 Uhr" 

у меня уже есть некоторые обходные пути, но это было бы удивительным чтобы сделать его чистым. Любые идеи, что U diubg неправильно?

Использую хром 38.0.2125.111 и moment.js 2.8.3.

Скажите, пожалуйста, если вам нужна дополнительная информация о проблеме.

EDIT

Похоже, всего лишь несколько месяцев являются проблематичными. Это отлично работает:

moment('1. Januar 2014').format('LLLL'); 
"Mittwoch, 1. Januar 2014 00:00 

Я думал, что это могут быть специальные символы, такие как ä в März. Но это не будет работать ни:

moment('1. Dezember 2014').format('LLLL'); 
"Invalid date" 

ответ

5

Установите локаль немецкий явно и предоставить формат ввода

moment.locale("de"); moment('1. März 2014', "DD. MMMM YYYY").format("LLLL")); 

работает для меня: http://jsfiddle.net/sbbg3dzt/

+0

Просто узнал, что это необходимо укажите строку формата, как в вашем примере. Без него не будет работать даже с командой locale. – maggocnx

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