data - http post angularjs example
AngularJs ReferenceError: $ http no está definido (3)
Tengo la siguiente función angular:
$scope.updateStatus = function(user) {
$http({
url: user.update_path,
method: "POST",
data: {user_id: user.id, draft: true}
});
};
Pero cada vez que se llama a esta función, obtengo ReferenceError: $http is not defined
en mi consola. ¿Puede alguien ayudarme a entender lo que estoy haciendo mal aquí?
He pasado por el mismo problema cuando estaba usando
myApp.controller(''mainController'', [''$scope'', function($scope,) {
//$http was not working in this
}]);
He cambiado el código anterior a dado a continuación. Recuerde incluir $ http (2 veces) como se indica a continuación.
myApp.controller(''mainController'', [''$scope'',''$http'', function($scope,$http) {
//$http is working in this
}]);
Y ha funcionado bien.
Probablemente no haya inyectado el servicio $http
a su controlador. Hay varias formas de hacerlo.
Por favor lea esta referencia sobre DI . Entonces se pone muy simple:
function MyController($scope, $http) {
// ... your code
}
Solo para completar la respuesta de Amit Garg , hay varias formas de inyectar dependencias en AngularJS.
También puede usar $inject
para agregar una dependencia:
var MyController = function($scope, $http) {
// ...
}
MyController.$inject = [''$scope'', ''$http''];