Events 主干侦听器事件不工作

Events 主干侦听器事件不工作,events,backbone.js,bind,Events,Backbone.js,Bind,我有两个人和两个团队 我希望团队集合能够听到是否有人添加到人员集合中 然而,我不断地发现这个错误: 未捕获的TypeError:无法读取未定义的属性“\u listenerId” 也许我误解了bind和listenTo的概念?下面是我在这两个集合中使用的代码 var People = Backbone.Collection.extend({ url: '/people', model: Person,

我有两个人和两个团队

我希望团队集合能够听到是否有人添加到人员集合中

然而,我不断地发现这个错误: 未捕获的TypeError:无法读取未定义的属性“\u listenerId”

也许我误解了bind和listenTo的概念?下面是我在这两个集合中使用的代码

        var People = Backbone.Collection.extend({

            url: '/people',

            model: Person,

            comparator: 'id',

            initialize: function() {

                //Why does this return '_listenerID of undefined'
                this.bind('add', function() {
                    var teams = new Teams;
                    teams.render;
                });

            },

        });


        var Teams = Backbone.Collection.extend({

            url: '/team',

            model: Team,

            comparator: 'id',

            initialize: function() {

                this.listenTo(People.collection, 'add', this.render);

            },

            render: function() {

                console.log("POOP")

            }

        });

你确实误解了听众的工作方式。你应该特别听一些对象(例如,一个类的实例)

这里,主干尝试访问主干对象的私有属性
listenerId
,以进行一些内部绑定。在您的情况下,它试图获取
People.collection.\u listenerId
People
是您的类,它没有任何
collection
属性,因此
People。collection
未定义,因此您的错误


这些是你问题的基础。由于没有完全理解你的课程之间的联系以及你正在尝试做什么,我现在不想再进一步了。

你确实误解了听众的工作方式。你应该特别听一些对象(例如,一个类的实例)

这里,主干尝试访问主干对象的私有属性
listenerId
,以进行一些内部绑定。在您的情况下,它试图获取
People.collection.\u listenerId
People
是您的类,它没有任何
collection
属性,因此
People。collection
未定义,因此您的错误


这些是你问题的基础。由于还没有完全理解您的课程之间的联系以及您正在尝试做的事情,我现在不想再进一步了。

ahhh好的。Hrm,好的,我需要听一个类的实例。。。不仅仅是一个类?而且,我现在知道
没有
集合
属性。然而,
people.collection
如果我创建了
var people=new people
?现在就可以使用了:)当我看到有人在调用此.model时调用的其他代码时,我感到困惑——我想调用集合时必须同样具体,因此使用了
People.collection
——但计算主干比我聪明得多:p@JIGGABITS如果您看到类似于
this.collection
,它可以来自两个方面:表示集合的视图(然后您可以像那样访问集合)或模型(您可以像这样访问模型所在的集合)。(或自定义对象。)我想你已经解决了剩下的问题:psame错误,如果它得到一个未定义的变量作为第一个参数…啊,好的。Hrm,好的,所以我需要听一个类的实例…而不仅仅是一个普通的类?另外,我现在明白了
没有
集合
属性。然而,
peo如果我创建了
var people=new people
?现在就开始工作:)当我看到有人调用
这个.model
的其他代码时,我感到困惑——我想调用集合时我必须同样具体,因此使用了
People.collection
——但计算主干比我聪明得多:p@JIGGABITS如果您看到类似于
this.collection
,它可以来自两个方面:表示集合的视图(然后您可以像那样访问集合)或模型(你可以访问模型中的集合)。(或者自定义的东西。)我想你已经解决了剩下的问题:psame错误,如果它得到一个未定义的变量作为第一个参数…
console.log(“POOP”)
我想我是唯一一个…
console.log(“POOP”)
我想我是唯一一个。。。