Библиотека моментов возвращает другой формат даты и времени в IE10, но работает нормально в Chrome - PullRequest
0 голосов
/ 30 сентября 2019

moment.tz ("2019-11-03T06: 45: 01.000Z", "Америка / Чикаго"). ToDate ()

Возвращает «3 ноября 2019, 01:45 CDT» в Chrome и IE11, но в IE10 я получаю вывод
»Сб 2 ноября 20:45:01 CDT 2019".

Я заметил кое-что странное, и где проблема фактического форматирования начинается в функции момент-зона-js tz, где

out = момент. utc.apply (null, "2019-11-03T06: 45: 01.000Z");

Редактировать - ошибка в консоли, которую я видел позже: для этого не было предоставлено никаких данных о локалиобъект пока

1 Ответ

0 голосов
/ 06 октября 2019

Это происходило из-за того, что данные о локали не загружались в IE10, что было решено путем динамического импорта и добавления локали в браузер.

Код, который разрешил мою проблему, использует:

const locale = navigator.language
        || 'en-US';
const localeWithoutRegionCode = locale.toLowerCase().split('-')[0];
addLocaleData(require( `intl/locale-data/jsonp/${localeWithoutRegionCode}`));
...