2013-03-08 24 views
0

我正在創建一個可以在#view-helper的同一模板中多次引用的窗口部件/組件。示例:如何爲EmberJS中的每個視圖實例創建一個控制器實例?

Priority: {{view App.DropDown valueBinding="content.priority" sourceBinding="App.Priority"}} <br/> 
Status: {{view App.DropDown valueBinding="content.status" sourceBinding="App.Status"}} <br/> 

此小部件需要與商店進行通信以獲取所有可見項目的列表。據我瞭解Ember,意見不應直接與商店溝通。是否有可能爲每個視圖創建一個DropDownController的實例?

回答

1

這看起來很適合控制幫手。這個實例使用一個新的控制器每次:

Priority: {{control "dropDown" valueBinding="content.priority" sourceBinding="App.Priority"}} <br/> 
Status: {{control "dropDown" valueBinding="content.status" sourceBinding="App.Status"}} <br/> 

該段應每次實例調用時新鮮的DropDownController和DropDownView。你只需要弄清楚,將value和sourceBinding傳遞給你的視圖的最好方法是什麼。

+0

這看起來像它會解決我的問題。待機驗證:) – Espo 2013-03-08 11:50:01

+0

我會的。告訴我你的解決方案,以便我可以爲其他人更新綁定。 :-) – mavilein 2013-03-08 11:52:56

+0

它看起來像{{control}} - helper不能用於Bindings,所以我不能使用它。如果此問題得到解決,它將適用於我的方案:https://github.com/emberjs/ember.js/pull/2225 – Espo 2013-03-08 13:25:45

相關問題