关于主题,我找到了这样的帖子:Initialize service with asynchronous data
虽然看起来不错,但已经有两年历史了,有些参考文献已过时。例如:
$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
});
以及从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仍然是这样做的首选方法吗? /更好的方法?