2013-04-21 49 views
0

如在這裏討論了LayoutView,即額外的包裝創建我有一個類似的問題:Extra wrappers in Backbone and Marionette如何使用MarionetteJS刪除CollectionView的額外包裝?

現在,我嘗試使用的CollectionView,看到類似的,一些意想不到的div出現。

我的CollectionView的樣子:

 
MA.Views.Composites.Movies = Backbone.Marionette.CollectionView.extend({ 

    template: 'composites/movies', 

}); 

MA.addInitializer(function(){ 
    MA.collections.movies = new MA.Collections.Movies(); 
    MA.composites.movies = new MA.Views.Composites.Movies({ 
    itemView: MA.Views.Items.Movie, 
    collection: MA.collections.movies 
    }); 
    MA.collections.movies.fetch(); 
}); 

模板:

<div id="movies"> 
    movies 
</div> 

的ItemView控件:

 
MA.Views.Items.Movie = Backbone.Marionette.ItemView.extend({ 
    template: 'items/movie', 

    views: {} 
}); 

和ItemView控件模板:

<div class="item"> 
    {{ title }} 
</div> 

生成的HTML看起來像:

extra wrappers

回答

0

的問題似乎是,我是混合CompositeView中使用的CollectionView。通過在視圖上添加className屬性,解決方案很快就可以看到。 ItemView不應該包含模板中的包裝div,因爲這是由ItemView添加的。