Tam*_*mil 12 javascript backbone.js
我正在使用backbone.js编写示例应用程序.
在更新我的模型时,我以这种方式重新渲染我的视图
$('.target').html("");
$('.target').append(this.$el.html(this.template(model)))
Run Code Online (Sandbox Code Playgroud)
一旦在模型更新[在变化事件]之后重新渲染视图,附加到el孩子的事件就会丢失[似乎不像jQuery现场].这是一个已知问题还是我错过了什么?我应该尝试替换html而不是append?小提琴
jev*_*lio 10
一旦视图在DOM中,您就不需要继续删除和附加它.我认为管理这个的最简单方法是从视图中完全删除DOM插入,并让调用者view.render来处理它.
视图:
render: function() {
this.$el.html(this.template(model));
return this;
}
Run Code Online (Sandbox Code Playgroud)
来电者(首次渲染):
var view = new SomeView();
$('.target').append(view.render().el);
Run Code Online (Sandbox Code Playgroud)
在后续渲染中:
view.render();
Run Code Online (Sandbox Code Playgroud)
在将视图渲染到DOM之后,它可以愉快地重新渲染自身,而无需了解有关父视图的任何信息.事件绑定在渲染之间也应保持不变.
| 归档时间: |
|
| 查看次数: |
10614 次 |
| 最近记录: |