ビューを管理するためにバックボーン LayoutManager を使用しています。
render が呼び出される前にモデル データをフェッチする際に問題が発生しています。Ajax 成功のコールバックがまだ行われていないため、明らかにエラーがスローされます。
これを修正する 1 つの方法は、ルーター内でモデルをフェッチapp.useLayout("main").render();
し、success メソッドに入れることです。それは正しい方法ですか、それともより良い解決策はありますか?
ルーターコード:
app.useLayout("main").setViews({
".place-detail": new Place.Views.Show({
model: new Place.Model({ place_id: place_id })
})
});
app.useLayout("main").render();
コードを表示:
Views.Show = Backbone.View.extend({
initialize: function(options) {
_.bindAll(this,"render");
this.model.on("change", this.render, this);
this.model.fetch();
});
});