我正在关注一个主干.js 教程,遇到了 2 个函数initialize()
和render()
. initialize()
在使用$(self.el).append()
时附加一些 html 时render()
使用$(this.el).append()
。我对差异感到困惑,希望得到解释,谢谢!
JS代码
// Views
window.WineListView = Backbone.View.extend({
tagName:'ul',
initialize:function () {
this.model.bind("reset", this.render, this);
var self = this;
this.model.bind("add", function (wine) {
$(self.el).append(new WineListItemView({model:wine}).render().el);
});
},
render:function (eventName) {
_.each(this.model.models, function (wine) {
$(this.el).append(new WineListItemView({model:wine}).render().el);
}, this);
return this;
}
});