【发布时间】:2013-03-19 11:06:53
【问题描述】:
我想使用 Derick Bailey 在此thread 的“一般问题解决方案”中描述的方法在获取模型后渲染视图。我将在这里报告他的解决方案:
MyView = Backbone.View.extend({
initialize: function(){
this.model.on("sync", this.render, this);
},
render: function(){ ... }
});
myModel = new MyModel({id: someId});
new MyView({
model: myModel
});
myModel.fetch();
我的情况略有不同:我的视图位于区域布局内。如果我调用 Marionette.Region.show() 它可以工作,但视图会呈现两次。调用 Marionette.Region.attachView() 会调用一次视图渲染函数,但页面中不显示内容。
有什么想法吗?
【问题讨论】:
-
如果您使用 Marionette 区域和视图,则每次模型更改时视图都会更新。因此,如果您只希望视图呈现一次,则必须在调用该区域的 show 方法之前获取模型。
标签: javascript backbone.js marionette