我正在使用RequireJS为BackboneJS Web应用程序加载我的JavaScript模块,但此刻我遇到了样式问题。

我有两个共享很多代码的类,但是它们都子类化了不同的类。

TemplateLessonView                         LessonView
        |                                      |
        |                                      |
    EditorApp    <-- these share code -->    MainApp

现在让事情保持干燥,我希望MainApp扩展EditorApp,但是随后EditorApp的依赖项被加载,并且EditorApp通过以下格式调用它的一些基类功能:this.constructor.__super__.initialize.apply(this);
一种解决方案是从MainApp的模块加载模块时更改EditorApp的依赖项(因此,我需要LessonView,但将其作为EditorApp传递给TemplateLessonView

有人知道这样做的方法吗,或者有其他建议可以完成我在这里尝试的工作?

最佳答案

解决此问题的方法是创建一个将在两个类定义中导入的模块...

像这样的东西:

(...require stuff ...)
return {
    myfct1 : function(){
    },
    myfct2 : function(){
    }
}

然后您可以将模块导入所需的位置,然后像库一样调用通用代码...

关于javascript - RequireJS中的变量依赖,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15292427/

10-10 10:20