5

Używam angular-dynamic-locale, aby zmienić język datowacza UI Bootstrap (nie chcę dodawać właściwego pliku źródłowego lokalizacji po stronie serwera, dlatego potrzebuję czegoś bardziej dynamicznego).Angular Dynamic Locale nie działa natychmiast

Plik lokalizacyjny został załadowany. Jednak gdy otwieram datepicker na mojej stronie, lokalizacja będzie następować dopiero po przejściu na nowy miesiąc za pomocą przycisków <, >.

Czy istnieje sposób na bezpośrednią zmianę?

Odpowiedz

6

Nieważne, znalazłem rozwiązanie, które nie wymaga dynamicznej lokalizacji. Jak proposed by will Farrrell, wykryć lokalizacji prawa użytkownika w nagłówku mojego index.html i załadować ustawienia regionalne według:

var locale = window.navigator.userLanguage || window.navigator.language; 
if (locale) { 
    var smallLocale = locale.toLowerCase(); 
    document.write('<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-i18n/1.2.15/angular-locale_' + smallLocale + '.js"><\/script>'); 
} 

Działa to dla datepicker (jeśli dynamiczne zachowanie nie jest potrzebne).