排序日期不按预期工作

时间:2017-12-21 09:43:24

标签: sorting ember.js

我正在尝试对amountdate进行排序。但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'));
    },
  }
});

这是我的尝试:

Twiddle-link

1 个答案:

答案 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来正确排序这些。