0

items在 DerbyJS 组件中,我有一个要在视图中显示的数组。我想首先显示数组的最新项目,所以我正在寻找类似的东西each-reverse

{{each-reverse items as #item}}
  <p>{{#item}}</p>
{{/each-reverse}}

. 当然,这段代码不起作用,但我希望它能解释我想要实现的目标。有没有办法在 DerbyJS 中做到这一点?

理论上我可以反转items数组,但我不想这样做,因为有时我会使用.push. 相反,使用.unshift似乎不是最理想的。

4

1 回答 1

1

我很确定没有可以在视图中使用的 each-reverse 方法。实现您想要的一种方法是首先对控制器中的列表进行反向排序。

如果您使用 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}}
于 2015-05-29T14:36:47.903 回答