2011-12-21 133 views
1

我有一个目标:如何对ArrayStore进行排序?

store: Ext.create('Ext.data.ArrayStore',{ 
      sortInfo: { field: "uniq_users", direction: "DESC" }, 
      fields: [ 
       {name: 'Country', type: 'string'}, 
       {name: 'uniq_users',  type:'int'}], 
       data: [{Country: 'Ed', users: 'Spencer'}] 
    }) 
    store.loadData(...) 

为什么默认排序不野外工作?

+0

您是否正在寻找在一个网格中的数据?或者你打印出商店? – codemonkeyww 2011-12-21 17:08:43

回答

2

sortInfo属性可用于ExtJS 3.x而不是最新版本。随着版本4的发布,排序通过mixin Ext.util.Sortable来实现。你应该使用属性sorters来定义排序参数..

这里是你应该做的:

store: Ext.create('Ext.data.ArrayStore',{ 
    sorters: [ 
     {property : 'uniq_users',direction: 'DESC'} 
    ], 
    fields: [ 
     {name: 'Country', type: 'string'}, 
     {name: 'uniq_users',  type:'int'} 
    ], 
    data: [{Country: 'Ed', users: 'Spencer'}] 
}); 
store.loadData(...);