Введите константу перед загрузкой конструктора - PullRequest
0 голосов
/ 28 июня 2018

Мне нужна константа, чтобы быть готовым до загрузки контроллеров. Вот что я попробовал (хромая): -

    $stateProvider.state("landing", {
            templateUrl : "/landing/landingTemplate.html",
            url : "/landing",
            controller : "landingController",
            resolve : {
                returnState = function getReady() {
                    $http.get("data/Config.json").then(function(response) {
                        callGuiConfig = response.data;
                        callApp.constant('callGuiConfig', callGuiConfig);
                        return "ready";
                    });
                }
            }

Но я получил эту ошибку: -

Uncaught SyntaxError: Неверный сокращенный инициализатор свойства

в строке: returnState = function getReady() {

Я неправильно использую резольвер?

Ответы [ 2 ]

0 голосов
/ 28 июня 2018
$stateProvider.state("landing", {
    templateUrl : "/landing/landingTemplate.html",
    url : "/landing",
    controller : "landingController",
    resolve : {
        returnState : ['$http','callApp', function($http, callApp) {
            return $http.get("data/Config.json").then(function(response) {
                var callGuiConfig = response.data;
                //what is callApp??
                callApp.constant('callGuiConfig', callGuiConfig);
                return "ready";
            });
        }]
    }
};

Что такое callApp? Я предполагаю, что это сервис, который устанавливает / получает константы. Если нет, то удалите его из введенных параметров.

0 голосов
/ 28 июня 2018

Это официальный способ обработки констант.

angular.module('app', []);

app.constant('MOVIE_TITLE', 'The Matrix');

.controller('MyController', function (MOVIE_TITLE) {
  expect(MOVIE_TITLE).toEqual('The Matrix');
});

Вас заинтересует второй ряд, остальное - только для примера. Обратите внимание, что константа может быть объектом, массивом и т. Д. Не только строка.

Характеристики постоянных, изготовленных таким образом: это одноэлементный, он не является Инициативным и не Конфигурируемым

Если вам нужно то, что декораторы могут управлять и изменять, вам нужно .value()

Для получения дополнительной информации об этом и других провайдерах: https://gist.github.com/demisx/9605099

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