$ http未在angular js中定义

时间:2017-02-27 12:34:22

标签: angularjs

我遇到以下代码的问题。它在控制台中显示$ http undefined。我已经注入$ scope和$ http

SignInCtrl.$inject = ['$scope', '$http'];
function SignInCtrl($scope,$http) {
$scope.login = function($http) {   
return $http.post('/user/login', user).then(handleSuccess, handleError('Error creating user'));

};
}

2 个答案:

答案 0 :(得分:4)

替换

$scope.login = function($http)

通过

$scope.login = function()

来电者不会将$ http服务作为参数传递。它被注入控制器。因此,您的函数声明会将(未定义的)(未)作为参数传递给注入的$ http。

答案 1 :(得分:-1)

nohup.out

使用/ ** @ngInject * / u可以注入你不必编写所有依赖项的所有依赖项,如(SignInCtrl。$ inject = [' $ scope',' $ HTTP']);

在$ scope.login函数中,您传递$ http,这不是您已经注入的