我正在尝试对amount
和date
进行排序。但date
函数无法正常工作。使用ember排序方法的正确方法是什么?
我的代码:
import Ember from 'ember';
export default Ember.Controller.extend({
appName: 'Ember Twiddle',
sortingDate: ['date-of-purchase:desc'],
sortingAmout: ['amount:desc'],
sortByAmountSpent:Ember.computed.sort('model', 'sortingDate'),
sortByDateOfPurchase:Ember.computed.sort('model', 'sortingAmout')
,actions:{
sortByAmount:function(){
this.set("model", this.get('sortByAmountSpent'));
},
sortByDate:function(){
this.set("model", this.get('sortByDateOfPurchase'));
},
}
});
这是我的尝试:
答案 0 :(得分:0)
两件事:
1)你混淆了日期和金额之间的排序
sortByAmountSpent:Ember.computed.sort('model', 'sortingDate'),
sortByDateOfPurchase:Ember.computed.sort('model', 'sortingAmout')
2)您的模型数据是所有字符串,因此排序按字典顺序排列(例如,8被认为大于77)。按金额排序也不起作用。您必须将日期属性设置为正确的日期,然后您可以使用这样的解决方案:Emberjs sort content by date using sortProperties来正确排序这些。