4
我們依賴的一些jquery插件提供了包含區域設置/文化特定文件的功能,以使非en-us用戶能夠感受到更多功能(例如,jquery-globalize和bootstrap-datapicker)。要求帶有requirejs的可選javascript文件(例如需要特定於語言環境的文件)
實現,這是如下的老同學的方式(其中「EN-AU」是動態確定的,有時會造成一個404失蹤文化):
<script type="text/javascript" src="/js/globalize/globalize.js"></script>
<script type="text/javascript" src="/js/globalize/cultures/globalize.culture.en-AU.js"></script>
有一個推薦的方法通過requirejs實現這一點(請注意,全球化是作爲墊片包含的)?
這是我第一次嘗試,目前還沒有確定requirejs optomizer如何處理它...
Globalize = require("globalize");
...
locale = module.config().locale;
if (locale != null) {
require(["globalize/globalize.culture." + locale], function() {
logger.debug("Loaded locale '" + locale + "'");
Globalize.culture(locale);
}, function() {
logger.debug("Unable to load locale '" + locale + "'");
});
}
編輯:優化處理它不錯,但但解決的辦法並沒有真正工作,因爲文化文件異步加載有可能應用程序在文化設置之前使用了Globalize。
您是否看到過您可以使用i18n進行本地化? http://requirejs.org/docs/api.html#i18n昨天發現。 – shapeshifta
@shapeshifta是的,我們正在廣泛使用它,但據我所知它不適用於描述的場景(需要一個nls目錄等) – danw