Как настроить язык выбора даты и времени материала во время выполнения - PullRequest
0 голосов
/ 11 июля 2019

Я пытаюсь добавить поддержку языка к https://material.angularjs.org/latest/api/directive/mdDatepicker и хочу изменить язык во время выполнения.

https://material.angularjs.org/latest/api/service/$mdDateLocaleProvider предоставляет документацию для настройки языка перед загрузкой приложения.

Но я хочу изменить язык в зависимости от языка пользователя, который может отличаться от языка браузера.

Я делаю вид взлома и привязываю провайдера к объекту окна, а затем меняю язык при загрузке приложения, но это также работает только один раз. При последующем изменении языка это не работает

Я делаю это

angular.module(ApplicationConfiguration.applicationModuleName).config([
  "$mdDateLocaleProvider",
  function($mdDateLocaleProvider) {
    window.mdDateLocaleProvider = $mdDateLocaleProvider;
  }
]);

Тогда это внутри моего сервиса для обновления языка меток

//localize calendar
 window.mdDateLocaleProvider.months = $filter("translate")(
  "CALENDAR.MONTH"
 ).split(" ");
 window.mdDateLocaleProvider.shortMonths = $filter("translate")(
  "CALENDAR.MONTH_SHORT"
 ).split(" ");
 window.mdDateLocaleProvider.days = $filter("translate")(
  "CALENDAR.DAYS"
 ).split(" ");
 window.mdDateLocaleProvider.shortDays = $filter("translate")(
  "CALENDAR.SHORT_DAYS"
 ).split(" ");

В идеале я думал, что mdDatePicker должен поддерживать что-то вроде этого, чтобы мы могли динамически менять язык

<md-datepicker md-date-locale="en">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...