2013-09-22 47 views
1

我需要連接幾個變量來創建一個屬性,例如我有一組RadioButtons這可能會出現在頁面上多次 - 動態地,首先可以顯示視圖時間,其他的事情是,他們被放置在each循環,以便它們可以每個視圖顯示多次。Ember:concat屬性綁定,如何?

所以我不能用靜態name屬性,但我應該有幾個部分,如果Concat的,對於exampe結果應該是這樣的:

<input name="view1_row0" value="0"> No 
<input name="view1_row0" value="1"> Yes 

<!-- next row in view1 --> 
<input name="view1_row1" value="0"> No 
<input name="view1_row1" value="1"> Yes 

<!-- next row in view2 --> 
<input name="view2_row0" value="0"> No 
<input name="view2_row0" value="1"> Yes 

等等。我可以很容易地得到父母的視圖的ID與view._parentView.contentIndex循環/或指數,但我不知道如何Concat的他們在一個綁定,僞代碼是這樣的:

{{view Ember.RadioButton nameBinding=view.parentView.elementId + "_row" + view._parentView.contentIndex selectionBinding="someVal" value="0"}} 

但它當然在+跡象引發錯誤。有什麼辦法可以解決這個問題嗎?

回答

2

爲什麼不將它們作爲單獨的綁定傳遞並將它們連接在一個自定義的實現Ember.RadioButton中?

{{view App.MyRadioButton elementIdBinding="view.parentView.elementId" contentIndexBinding="view._parentView.contentIndex" selectionBinding="someVal" value="0"}} 

,然後在App.MyRadioButton(延伸Ember.RadioButton

name: function() { 
    return this.get('elementId') + '_row' + this.get('contentIndex'); 
}.property('elementId', 'contentIndex') 

另外,您還可能能夠做到,在您的控制器。

+0

嘿嘿,我剛剛完成了一些類似'init'的視圖+單獨綁定的功能,無論如何,你的解決方案更清潔,thx,就像一個魅力! – biesior