0
我試圖修改我的代碼,使其與Require.js一起工作,但我遇到了一些問題,其中一些依賴關係未定義,我相信它們應該是。處理require.js中的未定義依賴關係
的最小工作實施例由下面的文件給出:
main.js
:
// Configure require.js
requirejs.config({
baseUrl: "js/app",
});
require(["app"], function(app) {
app.init();
});
app.js
:
define(["container", "renderer"], function (CONTAINER, RENDERER) {
return {
init: function() {
CONTAINER.init();
RENDERER.init();
console.log(CONTAINER, RENDERER)
},
}
});
container.js
:
define(["renderer"], function (RENDERER) {
// define container
var container = new Object();
return {
container: container,
init: function() {
console.log(RENDERER)
},
}
});
renderer.js
:
define(["container"], function (CONTAINER) {
var renderer = new Object();
return {
renderer: renderer,
init: function() {
console.log(CONTAINER);
},
}
});
的問題是,在renderer.js
CONTAINER
是undefined
。控制檯顯示這在瀏覽器中運行時:
爲什麼CONTAINER
undefined
在renderer.js
,而它在app.js
定義就好了?
避免循環依賴關係:) http://stackoverflow.com/questions/4881059/how-to-handle-circular-dependencies-with-requirejs-amd – jan