鉴于
model() {
return this.store.findAll('foos')
},
在Ember路线中,为了显示目的,我如何反转记录的顺序?
即。在我的模板中我有:
{{#each model as |foo|}}
他们目前正按照我想要的完全相反的顺序出现。
答案 0 :(得分:2)
有几种方法可以做到这一点。一种是在控制器上创建一个计算属性。
sortedModel: Ember.computed('model.[]', function() {
return this.get('model').toArray().sort( (a, b) => {
return whateverSortYouWantToDo
})
})
然后在你的模板中
{{#each sortedModel as |foo|}}
答案 1 :(得分:2)
您可以使用arrayProxy实现在控制器中定义的sortableMixin,并在模板中使用此属性。例如:
sortedContent: function(){
var self = this;
return Ember.ArrayProxy.createWithMixins(Ember.SortableMixin, {
sortProperties: ['modelPropertyYouWantToSort'],
sortAscending: true,
content: self.get('model')
});
}.property('model')
模板:
{{#each sortedContent as |foo|}}