我有一個基於RequireJS的單頁Marionette應用程序,它需要支持轉換。使用Requirejs動態加載區域文件
我的目標是爲每種語言提供一個字典文件,並根據登錄用戶的配置加載相關文件。
由於大多數用戶會使用英語,因此我想在構建過程中使用應用程序中的英語詞典(使用r.js)。
我寫了一個小模塊,它基本上包裝jed.js(庫我使用的i18n):
//in myTranslator.js
define(function (require) {
"use strict";
var Jed = require("jed");
var localeData = require("json!locales/en_US.json");
var Translator = function() {
var i18n = new Jed({
"domain": "messages",
"locale_data": localeData
});
return i18n;
};
return Translator;
});
//in app.js
define(function(require){
var Translator = require("myTranslator");
var translator = new Translator();
});
正如你可以看到,現場數據從一個靜態文件加載。 我希望能夠將區域設置傳遞給轉換器構造函數,並基於此,加載正確的JSON文件。
如何在保持與構建項目捆綁在一起的英文JSON的情況下完成這項工作?
感謝您的答覆,但我最後做的東西有點不同。你可以在下面看到我的答案 – elanh