У меня есть несколько месяцев опыта разработки веб-приложения Extjs. Я столкнулся с этой проблемой:
Когда я переопределяю класс, я модифицировал метод и следил за предыдущей реализацией и вызывал callParent()
. Завершающая часть работает, но callParent()
вызвала старую реализацию.
мой главный код
Ext.override(Ext.layout.component.Draw, {
finishedLayout: function (ownerContext) {
console.log("new layouter being overriden");
this.callParent(arguments);
}
});
Метод класса Extjs, который должен быть переопределен:
finishedLayout: function (ownerContext) {
var props = ownerContext.props,
paddingInfo = ownerContext.getPaddingInfo();
console.log("old layouter being overriden");
this.owner.setSurfaceSize(props.contentWidth - paddingInfo.width, props.contentHeight - paddingInfo.height);
this.callParent(arguments);
}
В консоли я вижу, что сначала новый указатель распечатывает сообщение, за которым следует старая реализация layouter... Я поставил точку останова и восстановил стек вызовов, callParent()
новой планировщика, называемой старой, Мне нужно вызвать родительский класс, но не переопределенный метод.
Любая идея, как решить эту проблему?