Backbone.js:为什么我不能在这种情况下检索模型?

时间:2014-01-05 13:47:12

标签: backbone.js backbone-views

我正在尝试检索模型,因为我需要访问某些属性,但我不能。我在一个视图中,它扩展了另一个视图。这就是视图的样子:

var ImageGridControlView = GridControlView.extend({
//.... stuff ....
alert(this.model.get('property')) //This gives me an error in console and nothing is alerted.
});

在上面代码扩展的类中,可以检索模型,如下所示:

var GridControlView = ControlView.extend({
//.... stuff ....
alert(this.model.get('property')) //This shows the property value correctly
});

为什么不能从ImageGridControlView中检索模型?不同类,儿童等的模型的持久性是什么?我是Backbone的新手,官方文档只是表面上的模型。

1 个答案:

答案 0 :(得分:1)

你的片段太小而无法真正发现问题,因此我们必须猜测。最有可能的候选人是:

  • 您正在访问由未正确绑定的事件绑定触发的函数内的this.model,因此this实际上不是您的视图实例。它可能是窗口对象的源DOM元素。
  • 您没有在提供给视图构造函数的选项对象中传递model属性