Nic*_*muz 4 sorting extjs sencha-touch
我有一个商店+模型,它连接到第三方插件(Ext.ux.TouchGridPanel).该插件使用相关映射正确调用商店的sort()方法.一切都很好,商店自己排序.但是,我更愿意在商店中添加客户排序.我尝试在我的模型中添加sortType字段:
Ext.regModel("Transactions", {
fields: [
{
name: 'unit',
type: 'string',
sortType: function(value) {
console.log('PRINT GDAMNIT');
return 0;
}
},
...
]
});
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用,并且不会调用sortType.
TLDR:如何为商店进行自定义排序?
您的商店需要添加一个分拣机,在调用sortType函数之前对该字段进行排序.
var store = new Ext.data.Store({
model: 'Transactions',
sorters: [
{
property: 'unit',
direction: 'DESC'
}
]}
);
Run Code Online (Sandbox Code Playgroud)
排序类型将字段的值转换为另一个值以确保正确排序.如果您没有对该字段进行排序,则没有理由调用该函数.您可以将sortDir添加到字段中,该字段将根据字段的类型将字段排序为升序/降序.