Backbone Uncaught TypeError:Object [object Object]没有方法'call'

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Backbone Uncaught TypeError:Object [object Object]没有方法'call'相关的知识,希望对你有一定的参考价值。

如果我在“new ToolBarView({model:this.toolBar})”之前设置this.toolBar的属性,它运行良好。但是当我在它之后设置时,我得到一个错误“Uncaught TypeError:Object [object Object]在Chrom上没有方法'call'”。

这是我的代码:

var DoubleColorBallView = Backbone.View.extend({
    initialize: function () {
        this.toolBar = new ToolBarModel({
            leftBtn: 'garbageCan',
            rightBtn: 'nextPage'
        });
        this.toolBar.set({number: 1});   //works well

        var view = new ToolBarView({model: this.toolBar});

        this.toolBar.set({number: 2});    //get an error

        $("#toolBar").append(view.render().el);
    }
}

为什么我收到错误?谢谢您的回答!

答案

我已经解决了这个问题。它由ToolBarView事件引起“this.listenTo(this.model,'change',this.render());”。当绑定应该引用的事件处理程序时,我EXCUTE处理函数。删除括号,然后代码运行良好。这两个问题似乎无关。然而,这个错误确实引起了我的问题。谢谢您的帮助!

以上是关于Backbone Uncaught TypeError:Object [object Object]没有方法'call'的主要内容,如果未能解决你的问题,请参考以下文章

新 Backbone.Model() 与 Backbone.Model.extend()

Backbone.Marionette vs Backbone-Boilerplate

初探Backbone

初探Backbone

Backbone入门

如何从 Backbone.LocalStorage 获取 Backbone.Collection