Marionette.Js问题无法附加明确的div
evey我做的事情我记得在我的项目之前附加div清除
喜欢
列表 明确 项目 项目 项目
这是我的代码
var MyItemView = Backbone.Marionette.ItemView.extend({
template: tplI ,
className: 'item',
tagName : 'article',
});
var myCompositeView = Backbone.Marionette.CompositeView.extend({
itemView: MyItemView ,
itemViewContainer: "#list",
template: tplC ,
className : 'wikis' ,
initialize: function () {
this.collection = new Collection () ;
this.model = new CollectionModel() ;
this.listenTo(this.collection, "reset", this.set);
},
set: function ( collect ) {
this.model.set( collect.wiki ) ;
this.render() ;
} ,
onRender : function( evt ){
if ( $.trim( this.$('#list').html() ) != "" ) {
this.$('#list').append( '<div class="clear"></div>' ) ;
}
},
onClose :function() { $('#list').
this.$el.height( 0 ) ;
}
});
感谢您的帮助
答案 0 :(得分:0)
找一个临时解决方案
第1566行
// Internal method to loop through each item in the
// collection view and show it
showCollection: function(){
var ItemView;
this.collection.each(function(item, index){
ItemView = this.getItemView(item);
this.addItemView(item, ItemView, index);
}, this);
this.triggerMethod("renderCollection", this);
},
然后
集合视图中的
initialize: function () {
//console.log( 'collectionView' ) ;
this.on( 'renderCollection' , this.collectionrendered ) ;
},
collectionrendered: function(){
this.$el.find( this. itemViewContainer ).append( '<div class="clear"></div>' ) ;
console.log('collectionrendered') ;
}