Передача данных между модулями / контроллерами angularjs - PullRequest
0 голосов
/ 01 мая 2018

Итак, у меня есть два модуля, каждый с одним со своим собственным контроллером, и мне нужно передать объект между ними, я видел, что это можно сделать с помощью службы, я пробовал кое-что, но продолжаю получать ошибку «$ injector» во втором модуле / контроллере. Пожалуйста, помогите исправить это. Это мой первый модуль / контроллер с его сервисом:

var appIndex = angular.module("AppIndex", ['datatables', 'datatables.bootstrap', 'ui.select']);
appIndex.service('sharedData', function () {
    this.data = {};
    this.setData = function (newData) {
        this.data = newData;
        return this.data;
    };
    this.getData = function () {
        return this.data;
    };
});
appIndex.controller("IndexController", function ($scope, $http, $window, sharedData) {
    sharedData.setData($scope.referencia);
});

А это мой второй модуль / контроллер:

var appCna = angular.module("AppCna", ['ui.select', 'AppIndex']);
appCna.controller("CnaController", function ($scope, $http, $window, sharedData) {
    $scope.referencia = sharedData.getData();
});

Ответы [ 2 ]

0 голосов
/ 03 мая 2018

Итак, в конце концов, я, наконец, перестал пытаться использовать сервис для своей цели передачи объекта между двумя модулями, и я использовал функцию LocalStorage.

0 голосов
/ 01 мая 2018

Вам нужно позвонить setData на ваш первый контроллер

appIndex.controller("IndexController", function ($scope, $http, $window, sharedData) {
    sharedData.setData($scope.referencia);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...