我遇到以下代码的问题。它在控制台中显示$ 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'));
};
}
答案 0 :(得分:4)
替换
$scope.login = function($http)
通过
$scope.login = function()
来电者不会将$ http服务作为参数传递。它被注入控制器。因此,您的函数声明会将(未定义的)(未)作为参数传递给注入的$ http。
答案 1 :(得分:-1)
nohup.out
使用/ ** @ngInject * / u可以注入你不必编写所有依赖项的所有依赖项,如(SignInCtrl。$ inject = [' $ scope',' $ HTTP']);
在$ scope.login函数中,您传递$ http,这不是您已经注入的