我正在制作一个自定义的stateProvider,我想为我的面板状态保存一些额外的东西。我读到这一点,为了做到这一点,你要做的是覆盖面板类的getState()
函数,但一定要调用超类方法。我试过这样的事情:
initComponent: function () {
Ext.apply(this, {
getState: function() {
this.superclass.getState.call();
return {
col: this.up().id,
row: this.row,
hidden: this.isHidden()
};
}
});
this.callParent(arguments)
}
但它似乎不起作用。我对如何应用超类方法感到困惑......
文档说明了关于组件getState()
方法的以下内容:
实现更复杂状态的子类应调用超类的实现,并在保存此基本状态时将其状态应用于结果。
我错的任何想法?
答案 0 :(得分:1)
getState
获取超级方法调用的结果并应用更改
Ext.define('MyPanel', {
...
getState: function() {
var result = this.callParent(arguments);
Ext.apply(result, {
col: this.up().id,
row: this.row,
hidden: this.isHidden()
});
return result;
}
})