我的文檔中發現有一種方法可以pass custom configuration into a module:訪問RequireJS路徑配置
requirejs.config({
baseUrl: './js',
paths: {
jquery: 'libs/jquery-1.9.1',
jqueryui: 'libs/jquery-ui-1.9.2'
},
config: {
'baz': {
color: 'blue'
}
}
});
然後你就可以從模塊訪問:
define(['module'], function (module) {
var color = module.config().color; // 'blue'
});
但有同樣的方式來訪問頂級路徑配置,像這樣?
define(['module', 'require'], function (module, require) {
console.log(module.paths()); // no method paths()
console.log(require.paths()); // no method paths()
});
僅供參考,這不適用於生產現場。我試圖在QUnit測試頁面中連接一些奇怪的debug/config代碼。我想枚舉哪些模塊名稱具有定義的自定義路徑。 This question涉及到的問題,但只讓我查詢已知的模塊,而不是枚舉它們。
很好的答案,但很快的問題。爲什麼不在生產代碼中使用它? – Shanimal 2015-03-07 00:29:28
@Simalimal由於事情可能會隨着這個對象的變化而變化(因爲它沒有直接暴露或在doc中可用),而且你不想突然破壞你的產品代碼。 – Vishwanath 2015-03-15 15:33:59