1

我是 Backbone.js 以及一般 JavaScript 的新手。玩一会儿,我会看到问题标题中显示的错误消息,其中包含这些模型定义:

var Incredient = Backbone.Model.extend({
  initialize : console.log("A new Incredient object called " + name + "has been created."),
  defaults : {
    name : '',
    quantity_unit: '',
    need_to_buy : true
  }
});

var Dish = Backbone.Model.extend({
  initialize : console.log("A new Dish object with title " + title + "has been created."),
  defaults : {
    title : '',
    incredients : [],
    instructions : ''
  }
});

奇怪的是,这个错误出现在第 11 行,它成立

initialize : console.log("A new Dish object with title " + title + "has been created."),

未定义的变量是“标题”。但是,第 2 行不会在 Chrome 的 JS 控制台中导致任何错误消息。显然,尽管有类似的声明,但“名称”没有这样的引用错误。11号线是怎么回事?任何帮助深表感谢。

谢谢。

4

1 回答 1

1

试试这个:

var Dish = Backbone.Model.extend({
  defaults : {
    title : '',
    incredients : [],
    instructions : ''
  },
  initialize : function(){
      console.log("A new Dish object with title " + this.get('title') + "has been created.")
  }
});
于 2013-11-26T21:16:56.453 回答