5
我使用angular-dynamic-locale來更改UI Bootstrap的datepicker(我不想在服務器端添加正確的本地化源文件,因此我需要更動態的東西)的語言。角動態區域設置不能立即工作
本地化文件被加載。但是,當我在我的頁面上打開日期選擇器時,只有在通過按鈕<
,>
切換到新月後,纔會進行本地化。
有什麼辦法讓這個改變直接發生嗎?
我使用angular-dynamic-locale來更改UI Bootstrap的datepicker(我不想在服務器端添加正確的本地化源文件,因此我需要更動態的東西)的語言。角動態區域設置不能立即工作
本地化文件被加載。但是,當我在我的頁面上打開日期選擇器時,只有在通過按鈕<
,>
切換到新月後,纔會進行本地化。
有什麼辦法讓這個改變直接發生嗎?
沒關係,我實際上找到了一個不涉及動態定位的解決方案。作爲proposed by will Farrrell,我檢測用戶的語言環境就在我index.html
的頭和加載根據語言環境:
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>');
}
該方法適用於日期選擇(如果不需要動態行爲)。