2013-04-09 69 views
0

我有一個Marionette.CollectionView,對於某些項目(模型)需要創建2個視圖以在模型上運行,Marionette.CollectionView.buildItemView可以返回2個視圖嗎?使用Marionette CollectionView爲每個項目創建多個視圖

編輯

我不想創造一些其他WrapperItemView,我已經有了一些解決方案現在正在運行,但我想讓它更加非標準。

我希望我的代碼看起來像這樣,是否有一種簡單的方法使它工作?

buildItemView: function(item){ 
    // create 2 views based on item type 
    return [view1, view2]; 
    }, 
    appendHtml: function(collectionView, itemView, index){ 
    if (itemView.type === "X") 
     collectionView.$el.find(".A").append(itemView.el); 
    if (itemView.type === "Y") 
     collectionView.$el.find(".B").append(itemView.el); 
    } 

回答

0

爲什麼沒有你的itemview作爲第二個視圖的父親,你可以在item視圖的初始化函數中創建第二個視圖。

編輯

我仍然會創建一個perent鑑於這次我將使它的你2次的父母,你的收集將創造家長和家長將創建它的內部的兩種觀點。

這種方式對我來說更自然。

+0

問題是這兩個視圖應該被追加到CollectionView中的不同元素上,我將編輯我的問題 – ekeren 2013-04-09 08:18:36

+0

我仍然會創建一個perent視圖,這次我會讓它成爲你的2個視圖的父視圖,創建父項,父項將在其中創建兩個視圖。 – 2013-04-09 15:00:03

相關問題