2017-05-05 20 views
0

我對Ember.js非常新,所以我想知道是否有人可能知道「聰明」的方法來完成此任務。將屬性應用到模板中除了最後一個元件之外的所有元件

我有一個組件的幾個實例在一個表示流程中的步驟的模板中呈現。我想設置一個布爾屬性(摺疊),除了最後一個以外,它們全部都是。我可以通過使用計算屬性手動執行此操作(請參見下面的示例),但這樣做會很麻煩,因爲此過程中的每個步驟都會針對要設置的布爾屬性設置不同的(有時是多個)條件,並且難以保持較大我的代碼庫的這一部分得到。

這是一個什麼樣子:

<ul> 
    <li>{{event-box collapse=wasBCompleted}}</li> 
    ... 
    <li>{{event-box collapse=wasCAndDCompleted}}</li> 
    ... 
    <li>{{event-box collapse=false}}</li> 
</ul> 

我希望有可能是一個辦法在模板中選擇(或軌道)組件的所有實例,並在一個步驟屬性適用於他們 - 或者可以將它們添加到數組中,然後將它們放入模板中,然後再進行迭代,但是我尚未成功完成此操作。

任何人都可以建議,如果這是可行的?謝謝!

回答

0

我認爲你需要清理一下你的問題;你想達到什麼目的?

將屬性應用於模板中除最後一個組件之外的所有組件?簡單!但我不認爲這是你真正想要的。

<ul> 
    <li>{{event-box collapse=wasBCompleted}}</li> 
    ... 
    <li>{{event-box collapse=wasCAndDCompleted}}</li> 
    ... 
    <li>{{event-box}}</li> 
</ul> 

什麼是事件框組件試圖做什麼?更具體地說,爲了完成它的工作,它需要從外部獲得哪些信息(在本例中是「崩潰」屬性)?

+0

事件框以一致的樣式顯示文本,幷包含一個「摺疊」本身的按鈕 - 隱藏其內容並縮小其高度。 「collapse」正是我現在要設置其初始值的過程,但這不是我的目標 - 我希望能夠在頁面中訪問所有事件框組件並設置「摺疊」除最後一個以外的所有財產「真實」。 – Argus9

相關問題