バックボーン js の View.remove() 関数は、ビュー自体のコンテナー要素を DOM から削除し、削除されたビューの再作成を防ぎます。このシナリオがどのように処理されるかについての考え
ここに私のコードがあります、
var AttributeView = Backbone.View.extend({
el: $("#attrs"),
template:_.template($('#attrs-template').html()),
initialize:function() {
},
render:function (eventName) {
$(this.el).html(this.template(this.model.toJSON()));
return this;
},
dispose:function(eventName){
this.unbind();
this.remove();
},
});
var attrView = new AttributeView();
....
attrView.dispose();
//Later on some event I do the below
attrView = new AttributeView()
attrView.render();
上記の最後の 2 行は、id="attrs" を含む div が存在しないため、ビューを再作成しません。