Вопрос
Подскажите срочно, как поставить флаг в созданный мной модуле
15 июля 2022 14:29
Добрый день мне нужно в созданном мной модуле сделать функцию для bind к кнопке "Добавить". Я делаю расширение от LookupPage.
Вот весь код:
define("UsrAccountBaseLookupModule", [ "LookupPage", "LookupPageViewGenerator", "LookupUtilitiesV2", "css!LookupPageCSS" ], function(LookupPage, LookupPageViewGenerator) { return Ext.define("Terrasoft.configuration.UsrAccountBaseLookupModule", { alternateClassName: "Terrasoft.UsrAccountBaseLookupModule", extend: "Terrasoft.LookupPage", render: function() { this.callParent(arguments); // if() this.myRenderLookupView(this.lookupInfo.entitySchema, this.lookupInfo.gridProfile); }, renderLookupView: Terrasoft.emptyFn, myRenderLookupView: function(schema, profile){ var config = this.getLookupConfig(schema, profile); var topPanelConfig = LookupPageViewGenerator.generateFixed(config); var buttonsConfig; _.some(topPanelConfig.items, function(target) { if (target.id === "selectionControlsContainerLookupPage") { _.some(target, function(target) { if (Array.isArray(target)) { buttonsConfig = target; return true; } }); return true; } }); _.some(buttonsConfig, function(target) { if (target.caption === "Добавить") { target.enabled = {bindTo:"getViewModelValues"}; return true; } }); this.renderLookupControls(config, topPanelConfig); }, getViewModelValues: function() { if(Terrasoft.SysValue.CURRENT_USER.value !== "8239c02a-1376-4e23-82f5-d5b142ac16f4") { window.console.log(Terrasoft.SysValue.CURRENT_USER.value !== "8239c02a-1376-4e23-82f5-d5b142ac16f4"); return false; } else { return this.render(); } var values = { canEdit: true, }; return values; }, generateViewModel: function() { var viewModel = this.callParent(arguments); this.applyViewModelMethods(viewModel); return viewModel; }, applyViewModelMethods: function(viewModel, scope) { Ext.override(viewModel, { onSearchButtonClick: function() { var parentMethod = this.getParentMethod(this, arguments); Terrasoft.chain( function(next) { // Вот тут нужно сделать вызов функции чтобы кнопка Добавить стала активной this.Ext.callback(scope, this.getViewModelValues); next(); }, parentMethod, this ); } }); }, }); });
Для уточнения, мне нужно сделать проверку функцию когда делаю клик на кнопку поиск, если есть данные в справочнике, то кнопка Добавить должна быть неактивной, в противном случае она активируется.
Вот тут я не могу сделать вызов функции. Пожалуйста подскажите
Нравится
1 комментарий
29 июля 2022 11:58
Добрый день!
Рекомендую сперва проверить работает ли данное замещение кнопки "Добавить". Для этого вместо функции используйте простое значение false. Уже с этого можно делать выводы и искать причину.
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать