У меня есть родительский класс и дочерний класс, как указано ниже.
Ext.ns("MyUi");
MyUi.ParentPanel = Ext.extend(Ext.form.FormPanel, {
initComponent: function() {
MyUiPanel.superclass.initComponent.call(this);
},
id: 'card-id',
layout: 'card',
activeItem: 0,
buttonAlign: 'center',
buttons:[{
text: "Next",
id: "card-next",
handler: function(){
Ext.getCmp('card-id').navigationHandler(1);
}
},{
text: "Previous",
id: "card-prev",
handler: function(){
Ext.getCmp('card-id').navigationHandler(-1);
},
disabled: true
},{
text: "Finish",
id: "finishButton",
}],
navigationHandler: function(increment){
//code to switch cards/items
}});
var panel1 = ...
var panel2 = ...
childPanel = Ext.extend(MyUi.ParentPanel, {
initComponent: function() {
var items = [panel1, panel2];
Ext.apply( this, {
items: items
});
Cx.Ui.ProvisionRPoolWizardPanel.superclass.initComponent.apply(this);
}
});
Я хочу, чтобы моя дочерняя панель переопределяла имена и обработчики кнопок родительской панели.
Например, вместо «Готово» я хочу, чтобы в дочерней панели было имя «Завершить», и я хочу иметь свой собственный обработчик.
И дочерняя панель должна иметь возможность переопределять код обработчика «Далее» родительской панели. Например, когда я нахожусь на панели 1, если я нажимаю «Далее», я хочу выполнить некоторые проверки, а затем я хочу вызвать функцию обработчика «Далее» родительской панели.