我正在将标准 Web 应用程序迁移到主干,今天是第一天,所以假设我犯了一些真正的初学者错误。我有以下 View 类,它需要一个集合。我正在迭代它,它返回它应该基于console.log'ging(注释为'这工作正常')它但它不附加任何东西(注释为'这不起作用')。谁能告诉我这个片段做错了什么?
var HomepagePositionsView = Backbone.View.extend({
render:function(){
var str="";
this.collection.forEach(function(location){
var hpsView=new HomepagePositionView({model:location});
//hpView.render();
console.log(hpsView.render().el); // this works ok
//str+=hpView.el;
$(this.el).append(hpsView.render().el); // this doesn't work
});
//$(this.el).text(str);
console.log(this.el); // just <div></div>
return this;
}
});
谢谢任何帮助
编辑#1
这就是我实例化的方式:
homepage_position: function(){
console.log("within homepage_position");
this.homepage_positions= new Locations();
this.homepage_positions.url='/hex-jt/api-homepage-position';
var str="";
this.homepage_positions.fetch({success: function(data){
var hpView= new HomepagePositionsView({ collection:data});
hpView.render();
console.log(hpView.el);
//str+= $.html(hpView.el);
$('#app').html(hpView.el);
}});