В процессе разработки extjs многие баги возвращаются к нам в ином виде — но по сути остаются теми же. Если grid stateful, и мы хотим запоминать в state его состояние сортировки — флаг autoLoad будет игнорироваться. Этот баг появился ещё в 5-ой версии extjs и был исправлен в версии 6.0.0.415 под тикетом EXTJS-16347. И вернулся в версии 6.5.3.57 и не исправлен по текущий момент (7.3.1). Пример и решение под катом 🙂
Ext.define('StoreStateRestorePatch', {
override: 'Ext.data.ProxyStore',
preventLoadOnRestoreState: true,
load: function (...args) {
const me = this;
if (me.preventLoadOnRestoreState && !me.autoLoad) {
return me;
}
return me.callParent([args]);
},
applyState: function (state) {
const me = this;
if (me.preventLoadOnRestoreState && !me.autoLoad) {
me.on('beforeload', () => false, me, { single: true });
}
me.callParent([state]);
},
});
Ну и собственно пример, можете предложить свои решения. Описание кейса в комментариях на fiddle. У store в примере autoLoad: false если что 🙂 Fiddle: