javascript - 主干 View 无法使用 requirejs 扩展

标签 javascript backbone.js requirejs amd

我熟悉构建主干应用程序,但我正在尝试将其转换为使用 requirejs,我面临的问题是当我尝试扩展父 View 时,它是 undefined

当尝试将 base-view.js 扩展到 properties-view.js 时

 define(['backbone','underscore','jquery','views/node/base-view'],                  
   function(Backbone, _, $, NodeBaseView){
     PropertiesView = NodeBaseView.extend({

        });
     }
});

在父基础 View 中实例化一个 subview

    define(['backbone','underscore','jquery','views/node/properites-view'], function(Backbone, _, $, PropertiesView){
    NodeBaseView = Backbone.View.extend({
    ..
        new PropertiesView({});
    ..
    });

});

尝试为 PropertiesView 扩展时,这里的 NodeBaseView 是undefined。有帮助吗?

注意:我在此处使用 AMD 版本的 Backbone 和下划线 https://github.com/amdjs

最佳答案

这里的问题似乎是循环依赖。基础 View 需要属性 View ,反之亦然。这导致其中之一未定义。

关于javascript - 主干 View 无法使用 requirejs 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15482524/

相关文章:

javascript - 如何在 chai 测试框架中测试数组?

javascript - "location"是 react 中的保留字吗?如果是这样,它有什么作用?

jquery - 扩展 javascript 库(underscore、jquery、backbone 等)

javascript - 如何访问 Require.js 的配置

javascript - 响应式设计与谷歌地图

javascript - 如何将 Mathematica 语法转换为 latex ?

javascript - Backbone.js:如何将挂起的同步事件排队到服务器?

backbone.js - 使用 Backbone.js 路由器浏览使用 require.js 模块化的 View

javascript - 如何使这个发布/订阅代码更具可读性?

backbone.js - Backbone 样板 : "this.model is undefined"