我有一堆名称类似于“Itemtype#”的记录,当它们输出到树状视图中时,它们排序不正确,如下所示:
我的模型字段定义如下,我在“名称”上排序:
fields: [
{ name: 'Id', defaultValue: 0, type: 'int', mapping: 'Id' },
{ name: 'Name', defaultValue: '', type: 'string', mapping: 'Name', sortType: Ext.data.SortTypes.asUCString },
{ name: 'Type', defaultValue: 0, type: 'int', mapping: 'Type' },
{ name: 'CreationDate', type: 'date', mapping: 'CreationDate' }
],
有人能指出我正确的方向吗?我正在使用extjs 4.0.5
答案 0 :(得分:16)
在商店中,您必须设置分拣机属性显示数据的方式:
var store = Ext.create('Ext.data.JsonStore', {
.
.
.
remoteSort: false, //true for server sorting
sorters: [{
property: 'Name',
direction: 'DESC' // or 'ASC'
}],
.
.
.
})
答案 1 :(得分:1)
尝试使用TreeStore.sort的分拣机配置调用a sorting callback。在这种情况下,简单的字段排序不会做,因为天真的alpha排序不是你想要的。 Ext.util.Sorter doc顶部的示例显示了如何在商店中执行此操作,但您可以轻松地将其添加到模型的sorters
参数中。