条件:
1)我们有一堆使用以下模式的遗留代码:
base.js
var Base = function(config) {
var that={};
that.doThing1=function(){};
that.doThing2=function(){};
return that;
}
child.js
var Child = function(config) {
var that=Base;
that.doStuff1=function(){that.doThing1();};
that.doThing2=function(){};
return that;
}
2)关于这一点最重要的一点是它是遗留代码,而且很多,所以重构一切以使用不同的模式现在完全是不可能的。< / p>
3)我正在尝试使用require.js作为当前项目,沿着w / backbone,因此有子类,我想要求“Base”依赖。
这就是我现在的位置,但它不起作用:
require('Base'), function(Base) {
var Child = function(config) {
var that=Base;
that.doStuff1=function(){that.doThing1();};
that.doThing2=function(){};
return that;
}
return Child;
}
问题(S):
如何设置这个模式,以便我可以在它周围包含一个require()来抓取遗留的依赖关系asynch,这样我就可以将()Child输入到骨干类中?
答案 0 :(得分:2)
好的,这似乎就是这么做的。扔给我的是 - 在base.js中注意到类的名称不在那里。相反,我在require.config()中命名它。
base.js
define(function() {
return function(config) {
var that={};
that.doThing1=function(){};
that.doThing2=function(){};
return that;
};
});
child.js
define(['Base'], function(Base) {
return function(config) {
var that=Base(config);
that.doStuff1=function(){that.doThing1();};
that.doThing2=function(){};
return that;
};
});