Здравствуйте, уважаемые коллеги. Возник вопрос по мобильному приложению bpm'online.
Появилась необходимость заметить метод initialize из модуля "Terrasoft.view.BaseGridPage.View".
Сталкивался ли кто-то с подобной задачей? Помогите, пожалуйста. Пробовал создавать модуль, в котором писал extend: "Terrasoft.view.BaseGridPage.View", и подключал его в манифест. Сама схема подгружается, но метод вызывается только из родительской схемы.
Нравится
Федоровский Роман Дмитриевич,
Тогда для этой цели используйте override:
Ext.define("Terrasoft.BaseGridPageViewOverride", { override: "Terrasoft.BaseGridPageView", /** * @protected * @overridden */ initialize: function() { /* Your code */ this.callParent(arguments); } });
Только, пожалуйста, обращайте внимание на указанные области видимости методов (ни в коем случае не перекрывайте приватные методы).
Добрый день! Можете описать свою бизнес-задачу? Для какой цели вы хотите заменить initialize() в Terrasoft.view.BaseGridPage.View? Объясню свой вопрос: для ряда задач нет необходимости в расширении базовых классов или их замещению. Например, для изменения стилей страниц можно воспользоваться утилитным методом Terrasoft.util.writeStyles().
S.Kalishenko,
Мне нужно добавить элемент вроде QR-кода на экран, который будет на постоянной основе находиться на экране в момент открытия любого раздела в целях безопасности, для этого я в div главного окна из JS я добавляю автогенерируемый qr-код. Как применять стили страниц я понимаю.
Федоровский Роман Дмитриевич,
Тогда для этой цели используйте override:
Ext.define("Terrasoft.BaseGridPageViewOverride", { override: "Terrasoft.BaseGridPageView", /** * @protected * @overridden */ initialize: function() { /* Your code */ this.callParent(arguments); } });
Только, пожалуйста, обращайте внимание на указанные области видимости методов (ни в коем случае не перекрывайте приватные методы).
Большое спасибо! Это решило все мои проблемы. Прошу прощения за столь длительный ответ