AngularJS: инициализация службы с асинхронными данными для нескольких контроллеров - PullRequest
0 голосов
/ 08 октября 2018

Для предмета, я нашел этот пост SO: Инициализировать службу с асинхронными данными

Хотя это выглядит хорошо, ему два года, и некоторые ссылки устарели,Пример:

$http.get('url').success replaced with $http.get('url').then

В любом случае, у меня есть моя модель:

app.factory('User', function($http, $q) {
    var myData = null;

    var promise = $http.get('data.json').then(function (data) {
        myData = data;
    });

    return {
        promise: promise,
        setData: function (data) {
            myData = data;
        },
        doStuff: function () {
            return myData.getSomeData();
        }
    };
});

, и мне нужно разделить ее на несколько контроллеров:

app.controller('controllerOne', function(User) {
    // do stuff
});

app.controller('controllerTwo', function(User) {
    // do stuff
});

app.controller('controllerThree', function(User) {
    // do stuff
});

и каждый контроллер называетсяfrom ngRoute:

app.config(function($routeProvider) {
    $routeProvider
        .when("/one",{,
          controller: "controllerOne"
        })
        .when("/two",{
          controller: "controllerTwo"
        })
        .when("/three",{
          controller: "controllerThree"
        });
    });

... без определенного порядка

Сейчас есть много постов, которые ссылаются на angular-deferred-bootstrap , но эта библиотекане обновлялся с 2015 года. Мой вопрос: является ли angular-deferred-bootstrap по-прежнему предпочтительным способом сделать это, или есть другой / лучший способ?

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