1

モデルで実行する特定のアイテム (モデル) に対して 2 つのビューを作成する必要がある Marionette.CollectionView があります。Marionette.CollectionView.buildItemView は 2 つのビューを返すことができますか?

編集

別の 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);
  }
4

1 に答える 1

0

itemview が 2 番目のビューの親として機能しないのはなぜですか。item ビューの初期化関数で 2 番目のビューを作成できます。

編集

今回もパーレント ビューを作成します。それを 2 つのビューの親にします。コレクションが親を作成し、親がその中に 2 つのビューを作成します。

この方法は私にとってより自然です。

于 2013-04-09T00:33:38.823 に答える