2016-07-19 3 views
2

Я пытаюсь разобрать строку с помощью momentjs:momentjs разобрать немецкую строку даты

let date = "19. Juli 2016 05:00"; 

строки содержит месяц июля на немецком языке и имеет формат «LLL» в соответствии с momentjs дока.

Когда я пытаюсь разобрать его с

moment(date,'LLL'); 

Я получаю неправильную дату.

Когда я пытаюсь разобрать его с

moment(date,'LLL','de'); 

я получаю сообщение об ошибке:

TypeError: config._locale is null.

Как правильно разобрать эту строку?

+4

Включили ли вы-й e Немецкий язык? – JJJ

+0

Можете ли вы еще объяснить это? –

+1

По этому комментарию я предполагаю, что ответ «нет». [Читать документы.] (Http://momentjs.com/docs/#/i18n/) – JJJ

ответ

3

Вы должны использовать соответствующую зависимость moment-locales, чтобы иметь возможность распознавать даты на других языках. Вы можете найти list of locales here и использовать его с CDN, или загрузить и связать его самостоятельно из momentjs (получить тот, который говорит moment-with-locales.js)

И в этом случае следует использовать следующий метод синтаксического анализа (как вы уже пробовали это уже) :

let momentObj = moment(DATE_STRING, FORMAT, LOCALE); 

Demo

let momentObj = moment("04. Juli 2016 05:00", 'LLL', 'de'); 
 
console.log(momentObj);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/locale/de.js"></script>

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