У меня есть группа панелей (пока три), которые являются экземплярами одного и того же представления.
Поэтому у них много общего, например, панель инструментов и кнопки на них.
Я определяю текст панелей инструментов и кнопок при их создании, а текст поступает из переменной, например:
App.views.CommonView = Ext.extend(Ext.Panel, {
initComponent: function() {
this.backBtn = new Ext.Button({
text: globalVar,
handler: this.onBackTap,
scope: this
});
this.toolbar = new Ext.Toolbar({
title: this.title,
items: [this.backBtn]
});
}
});
anInstanceView: new App.views.CommonView({
title: globalVar
});
anotherInstanceView: new App.views.CommonView({
title: globalVar
});
Как видите, текст кнопки и заголовок панели инструментов зависят от globalVar.
Я хочу обновить все эти тексты вместе, когда я изменю значение этого golbalVar
globalVar = "new value";
// Somehow update all the button and toolbar texts on all three panels.
Я не хочу делать это вручную, как;
App.views.anInstanceView.getDockedItems[0].setTitle(globalVar);
и повторите это для всех панелей. Должно быть более чистое решение, способ обновления пользовательского интерфейса.
Что может быть тем более чистым решением?
Спасибо.