我想渲染木偶ItemView并将结果html()追加到我的div。 我的代码:
var ProjectItemView = Backbone.Marionette.ItemView.extend({
template: "#ProjectItem",
tagName: 'div',
initialize: function () {
this.model.on('change', this.life, this);
this.model.on('change', this.render, this);
},
life: function () {
alert(JSON.stringify(this.model));
}
});
var tmp = new Project({project_id: 1});
tmp.fetch();
$('#container').append(new ProjectItemView({model: tmp}).$el);
<{1}}中的警告显示模型权限。这意味着抓取工作正常
问题是 - 如何获取html作为视图的结果。
我也试过life: function
;
对不起同性恋者!问题在于我用来填充集合/模型的REST服务。它返回包含一个元素的数组 - 不是直接的普通对象。
答案 0 :(得分:0)
我认为你的问题只是操作的顺序。试试这个:
$('#container').append((new ProjectItemView({model: tmp})).render().el);
以前的方式,你在构造函数上调用.render()
。使用上面的附加括号,在实例上调用.render()
。
答案 1 :(得分:0)
将元素传递给视图:
new ProjectItemView({model: tmp, el:'#container'}).render();