[英]Using {{each}} block to iterate through an array backwards in DerbyJS
在DerbyJS組件中,我有一個數組items
,我想在視圖中顯示它。 我想先顯示數組的最新項目,所以我正在尋找類似each-reverse
東西:
{{each-reverse items as #item}}
<p>{{#item}}</p>
{{/each-reverse}}
。 當然,這段代碼不起作用,但我希望它能解釋我想要實現的目標。 DerbyJS有辦法做到這一點嗎?
從理論上講,我可以反轉items
數組,但我不想這樣做,因為有時我會使用.push
更新此數組。 相反,使用.unshift
似乎不是最佳選擇。
我很確定在視圖中沒有可以使用的每個反向方法。 實現所需目標的一種方法是首先對控制器中的列表進行反向排序。
如果您使用Derby排序過濾器來反轉數組中的項目,則仍可以根據需要使用push更新原始數組。
@originalList = @model.at 'originalList'
@reversedList = @model.ref 'reversedList', @model.sort 'originalList', (a, b) ->
return a - b
// add new items to the list
@originalList.push 4
// in the view
{{each reversedList as #item}}
<p>{{#item}}</p>
{{/each}}
或者,您可以嘗試
// in the view
{{each originalList as #item, #index}}
{{originalList[originalList.length - #index]}}
{{/each}}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.