我this
在渲染嵌套视图时遇到了上下文丢失的问题。这是我的代码:
Workflow.Views.Wall = Backbone.View.extend({
tagName: 'div',
id: 'wall',
className: 'row-fluid span12',
initialize: function() {
_.bindAll(this, 'render');
this.model.view = this;
},
render: function() {
this.model.stages.each(this.renderStage);
return this;
},
renderStage: function(model) {
var stageView = new Workflow.Views.Stage({ model: model });
//this is DOMWindow
this.$el.append(stageView.el);
}
});
所以一堵“墙”有很多“阶段”。在我的 renderStage 函数中,this
是 DOMWindow。
有人看到我的错误吗?