Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js BackboneJS如何导入模块并插入主视图的特定html元素_Backbone.js - Fatal编程技术网

Backbone.js BackboneJS如何导入模块并插入主视图的特定html元素

Backbone.js BackboneJS如何导入模块并插入主视图的特定html元素,backbone.js,Backbone.js,我有一个主视图,我在其中导入外部视图(模块),获取集合并将它们作为新视图插入到特定的HTML元素中。但是现在我犯了一个错误我不明白 我定义了这种观点: function (App, Backbone, auth) { var userNav = App.module(); UserNav = Backbone.View.extend({ ... )} return UserNav; } 然后在我的主视图中,我想导入视图userNav define(['a

我有一个主视图,我在其中导入外部视图(模块),获取集合并将它们作为新视图插入到特定的HTML元素中。但是现在我犯了一个错误我不明白

我定义了这种观点:

function (App, Backbone, auth) {

    var userNav = App.module();

    UserNav = Backbone.View.extend({
    ...
    )}
  return UserNav;
}
然后在我的主视图中,我想导入视图
userNav

define(['app', 'backbone', 'modules/userNav'],

function (App, Backbone, UserNav,) {

    var Main = App.module();

    Main.View = Backbone.View.extend({
        template: 'main',
        ...
        afterRender: function(){
            var userNav = new UserNav.View();
            this.insertView('.usernav', userNav);       
        }
但是我得到了未捕获的TypeError:undefined不是一个函数,它引用的是行

var userNav = UserNav.View();

这里的问题是什么?

我想问题在于用户导航。 尝试使用此代码将其定义为模块

define(['Backbone','App','auth'], function(Backbone,App, Auth){

    var UserNav = Backbone.View.extend({
     //Your code
    )}
  return UserNav;
});
这是requireJs定义模块的方式

希望有帮助。

newusernav()
而不是
newusernav.View()


UserNav是视图

在您的第一个代码片段中,您正在切换大小写,而不是
var UserNav=App.module()
您可能想要
var UserNav=App.module()
@Jack尝试过,但没有解决问题,我仍然收到相同的错误…您没有告诉我们insertView来自何处,或者dom是否包含.userNav元素,因此我们无法提供更多帮助insertView来自主干
Layoutmanager
,很抱歉我没有提到它,是的,.userNav元素位于
模板:'main'