Возникли проблемы с разрешением после преобразования модальной страницы в форму - PullRequest
0 голосов
/ 29 апреля 2020

У меня есть модал, который я хочу преобразовать на странице с формой. js для модального режима в основном таков (особенно обеспокоен разрешением):

// BEFORE
angular.module('mda')
  .service('visualizationModalService', ['$rootScope', 'nsjRouting', 'moment', 'toaster', '$uibModal', '$q', '$injector', '$filter',
    function ($rootScope, nsjRouting, moment, toaster, $uibModal, $q, $injector, $filter) {

      // LOTS OF CODE 1
      var fillProperties = function (specialEntity, scope) {
        // important stuff
      }

      var selfService = {
        open: function (solicitation, scope) {
          return $uibModal.open({
            template: require('html-loader!./visualization.modal.html'),
            controller: ['entity', '$uibModalInstance', '$injector', 'toaster', '$scope', '$rootScope', function (entity, $uibModalInstance, $injector, toaster, $scope, $rootScope) {
              // LOTS OF CODE 2
            }],
            controllerAs: "$ctrl",
            resolve: {
              entity: function () {
                entity = angular.copy(solicitation);
                return fillProperties(specialEntity, scope);
              }
            }
          });
        }
      };

      return selfService;
    }]);

После перестановки некоторых вещей я разделил вышеперечисленное следующим образом:

// AFTER
angular.module('mda')
  .service('visualizationService', ['$rootScope', 'nsjRouting', 'moment', 'toaster', '$uibModal', '$q', '$injector', '$filter',
    function ($rootScope, nsjRouting, moment, toaster, $uibModal, $q, $injector, $filter) {

      // LOTS OF CODE 1
      var fillProperties = function (specialEntity, $scope) {
        // important stuff
      }

    }])

angular.module('mda')
  .controller('visualizationFormShowController', [
    '$scope', '$stateParams', '$state', 'entity', 'toaster', '$injector', 'visualizationService', function (
      $scope, $stateParams, $state, entityService, entity, toaster, $injector, visualizationService) {
      // LOTS OF CODE 2
    }]);

Проблема в том, что в моем новом расположении функция fillProperties никогда не вызывается.

С модальным оно было записано в контроллере и вызвано в разрешении.

Я пробовал много способов, но не смог выполнить разрешение или вызвать функцию в новом контроллере .

Есть предложения, как мне это сделать?

Кстати, маршрут определяется следующим образом:

$stateProvider
            .state('visualization_show', {
                url: "/visualizations?/:visualization/",
                resolve: resolve,
                template: require('html-loader!./show.html'),
                controller: 'visualizationFormShowController',
                controllerAs: 'vslztns_frm_shw_cntrllr',
            })

Я пытался выполнить вызов функции в этом разрешении, но получил ошибку неопределенной функции и переменных ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...