2013-02-04 67 views
0

我目前使用的是CompositeView中顯示衆多ItemViews,每個代表的註釋。現在,我希望能夠回覆評論:當用戶選擇一個「回覆」按鈕(ItemView的一部分)時,我想在回覆下方的評論下方顯示一個表單。在Marionette.js的CompositeView中使用佈局?

我的想法是使用佈局對於這一點,含有兩個區域:一個用於註釋(如當前由ItemView控件表示)和一個用於答覆的形式(在用戶點擊「回信」按鈕後,後者僅示出)。

是否可以指定一個佈局作爲CompositeView中的ItemView控件屬性和渲染原ItemView控件(代表,於我而言,評論)這個佈局中?

回答

1

佈局延伸ItemView控件添加了對區域的支持,所以應該很好地工作。處理「回覆」事件時,請在您的(以前是空的)評論區域中顯示您的評論視圖。

+0

約翰是正確的。你可以指定任何從Backbone.View延伸出來的對象作爲CompositeView的'itemView'屬性。這包括所有Marionette視圖以及任何其他Backbone庫中的任何其他視圖類型。 –

+0

非常感謝!不過,我仍然沒有成功。我指定了一個包含兩個區域的佈局,即'commentRegion'和'replyFormRegion'。我將這個佈局定義爲CompositeView的itemView。顯示CompositeView時,會顯示佈局的模板(與CompositeView集合中的模型實例一樣多)。到現在爲止還挺好。現在,當Layout初始化時,我想在Layout的'commentRegion'中顯示原始註釋ItemView。我怎樣才能做到這一點?也許使用this.commentRegion.show()進行初始化?什麼傳遞給show()來顯示模型? – erik13579

+0

我想它是關於將模型實例從佈局傳遞到視圖。因此我標誌着這個問題得到解決 – erik13579