次のバックボーン ビューがあります。
var app = app || {};
app.QuestionListView = Backbone.View.extend({
tagName: 'ul',
initialize: function() {
this.listenTo(this.collection, 'sync', this.render);
},
render: function(e) {
this.collection.each(function(model) {
var q = new app.QuestionItemView({model: model});
q.render();
});
}
});
コレクションを繰り返し処理し、コレクション内のすべてのモデルにリスト要素を挿入しようとしています。私が現在実装している方法では、コレクション ビューがレンダリングされるたびに、各モデル ビューを再作成する必要があります。モデルビューが作成されると、再初期化されたり、リンクされているモデルを再フェッチしたりせずにレンダリングされるように、どのように実装しますか?
私の最初の試みは、initialize
関数でモデルを作成することでした。ただし、モデルビューにモデルを提供するのに間に合うようにコレクションが設定されていないため、これは機能しません。