我试图覆盖dgrid排序逻辑由kfranqueiro在这个环节上建议- https://github.com/SitePen/dgrid/issues/276 。
我得到的排序顺序服务器上的数据,只是想更新的列标题的UI。 我这样做 -
On(mygrid, 'dgrid-sort', lang.hitch( this,function(event){
var sort = event.sort[0];
var order = this.sort.descending ? "descending" : "ascending";
console.log("Sort "+ this.sort.property + " in " +order+" order.");
event.preventDefault();
mygrid.updateSortArrow(event.sort, true);
myFunctionToRefreshGrid();
}));
...
myFunctionToRefreshGrid: function() {
...//get data from server in sorted order
var mystore = new Memory({data: sortedDataFromServer, idProperty: 'id'});
mygrid.set("collection", mystore);
...
}
Memory
这里是"dstore/Memory"
。 我使用dgrid 0.4,
dstore 1.1
和dojo 1.10.4
拨打电话之前set('collection',...)
我看到sortedDataFromServer
在所需的排序顺序。 但由于某些原因,在网格中的顺序不同。 例如,按降序排序时,我看到开始下壳体中的值首先出现在降序排列,然后开始大写值出现在排序顺序。 它看起来像dstore做更多的东西。
可能是什么回事? 难道我做错了什么? 是否有不同的/更好的方式做自定义排序?
谢谢,