我想要检索从$ http.get数据,并把它放在$ rootScope内:
.RUN
app.run(function ($rootScope, $q, $http, $timeout, stateRules) {
stateRules
.then(function (data) {
$rootScope.user = data;
console.log(data);
});
});
。服务
app.service('stateRules', ['$http','$q', function($http, $q) {
var userUrl= 'api/user/';
var userService = {};
var deferred = $q.defer();
$http.get(userUrl+ "getUserName", { cache: true }).success(function (data) {
deferred.resolve(data);
});
return deferred.promise;
});
.controller
app.controller('userCtrl', ['$scope', function ($scope) {
console.log($scope.user);
}]);
但我的控制器中的$ scope.user的值是未定义的。任何想法如何解决它? 谢谢
你它注入到控制器? – tymeJV
是的。当我使用$ rootScope.user =“test”时,在我的控制器中$ scope.user显示测试。当我在$ http.get中使用$ rootScope.user时,$ scope.user显示为undefined。请注意,当我做$ http.get中的console.log(数据)时,我看到数据 – user708683
您是否使用像uglifyjs这样的mangling系统? 后您如何声明变量应用程序... – Hitmands