在ExtJs5中,当向已排序的网格添加新行时,新行永远不会添加到网格的顶部。有没有可能,让商店在排序时忽略幻影记录,并始终将其添加到顶部/或我们指定的任何位置?
发布于 2015-04-06 21:20:14
不是的。我读到的推理是,这是故意的,因为存储可以排序或未排序,而不是某种介于两者之间的状态(存储是否排序的答案必须是"true“或"false")。如果商店有分拣员,它将保持井然有序。Sencha不会改变这个行为。
这并不理想,但在向存储中添加记录之前,我将删除现有的排序器。这是不幸的,但它是快速的,容易的,并且不容易被用户注意到。删除现有的排序器不会重新洗牌网格的行(因为您没有应用任何新的排序函数)。因此,网格将继续显示为已排序,只是不强制执行。
var store = myStore,
sorters = store.getSorters();
if (sorters.getCount()) {
console.log('[' + store.$className + '] Removed Existing Sorters', {
store: store,
sorters: sorters
});
sorters.removeAll();
store.fireEvent('refresh', store); // will remove sort icon from grid column headers
}
store.insert(newRowIndex, newRec)
发布于 2015-04-24 10:13:53
我们应该将以下属性添加到存储中:
autoSort:false
https://stackoverflow.com/questions/29419043
复制相似问题