Javascript 动态渲染主干视图
我有以下主要观点:Javascript 动态渲染主干视图,javascript,backbone.js,Javascript,Backbone.js,我有以下主要观点: var MyView = Backbone.View.extend({ id : 'myview'+atrs.i, //i is the property of atrs passed as parameter to view initialize: function(atrs) { $('#'+atrs.DOMid).append(this.$el); } }); 我认为在初始化视图之前,主体中已经存在idDOMid的HTML元素。然后,我将视图初始化
var MyView = Backbone.View.extend({
id : 'myview'+atrs.i, //i is the property of atrs passed as parameter to view
initialize: function(atrs) {
$('#'+atrs.DOMid).append(this.$el);
}
});
我认为在初始化视图之前,主体中已经存在idDOMid
的HTML元素。然后,我将视图初始化为:
new MyView({DOMid:'mydiv',i:2});
但是我得到了错误:无法读取未定义的属性I
我还尝试:
var MyView = Backbone.View.extend({
initialize: function(atrs) {
this.id = 'myview'+atrs.i;
$('#'+atrs.DOMid).append(this.$el);
}
});
在本例中,将生成视图,但其中没有任何id属性
如何实现我的目标。如果要动态设置MyView的id,必须使用以下函数:
id: function() { return 'myview'+atrs.i; },
但一种更干净的方法是在实例化时使用MyView的指定参数:
new MyView({el:'#mydiv',id:'myview2'});
您是否尝试过将
.append(this.render().$el)
改为.append(this.$el)
?@TMichel结果没有变化