【发布时间】:2016-07-10 12:41:54
【问题描述】:
我尝试在提供程序中使用通用提供程序和 Angular 应用程序配置功能集数据。
.provider('userData', function() {
var authUser = {};
return {
checkUser: function() {
// wish to able use $http here for request to get data from service
// save all data into 'authUser' object
// $get return 'authUser' object
},
getCookie: function(value) {
// wish to able use $http here
},
$get: function() {
// only for return object
return authUser;
}
}
})
app.config(['userDataProvider', function(userDataProvider) {
userDataProvider.checkUser();
});
.controller('headerCtrl', ['$scope', 'userData', '$http', function($scope, userData, $http) {
// use inside all controllers/directives 'userData'
});
我尝试在 $get 函数中使用 $http 作为参数 -> 不工作:错误:
$get: function($http) {
return authUser;
}
我也找不到在提供程序中使用 $http 的任何有效示例。内部服务/工厂 $http 工作正常,但我需要通过配置函数在提供程序中准备数据。
【问题讨论】:
-
它似乎对我有用,你能检查一下this here 并尝试复制一个问题..
-
@PankajParkar 但在配置阶段尝试,此时服务尚不可用
-
@charlietfl 抱歉,我一定是错过了一些愚蠢的东西才能理解发生了什么,this fiddle 我创建的。
-
@PankajParkar 看看这个jsfiddle.net/7byp2wdv/1。服务在配置阶段不可用
-
@charlietfl 我没有得到任何 OP 要求这样的东西,但感谢您清理它。基本上服务,工厂和价值在设计阶段无法在配置阶段访问,我已经用相同的信息更新了你的答案,谢谢:)
标签: javascript angularjs