Backbone Model使this.set不是Model.initialize中的函数

Nil*_*ale 4 javascript-events backbone.js underscore.js backbone-model marionette

我有一个模型听取发布事件"更新:TotalCost",当属于集合C的任何模型M发生变化时,它从(不相关的)集合C触发.

此事件在初始化方法中编码,如下所示.收到事件后,我收到以下错误:

TypeError:this.set不是函数 this.set({"totalsale":value});

CostModel = Backbone.Model.extend({     
  defaults: {
    totalSale: 0,
    totalTax: 0
  },

  initialize: function(attrs, options) {
    if(options) {
      if(options.vent) {
        this.vent = options.vent;
      }
    }

    this.vent.on("update:TotalCost", function(value) {
      this.set({ "totalSale": value}); **//ERROR HERE**
    });
  }
});
Run Code Online (Sandbox Code Playgroud)

ism*_*iet 12

您很可能忘记new在模型之前添加关键字,例如:

var user = UserModel();

// instead of 

var user = new UserModel();
Run Code Online (Sandbox Code Playgroud)