Sto avendo difficoltà a capire come passare parametri dal mio angular
controller
a service
AngularJS: passando params dal controller al servizio
#my controller
'use strict';
angular.module('recipeapp')
.controller('recipeCtrl', ['$scope', 'recipeService',
function($scope, recipeService){
$scope.recipeFormData={};
$scope.recipeSave = function(){
recipeService.saveRecipe();
}
}]);
#my service
'use strict';
angular.module('recipeapp').service('recipeService',['$http', function($http){
this.saveRecipe = save;
function save(callback){
//calling external http api
}
}]);
Quello che sto cercando di fare qui è, ottenendo il $scope.formData
dalla mia forma e di controllo dovrebbero passare che a service
, Come per la mia comprensione, non posso usare $scope
all'interno del service
quindi ho bisogno di trovare un modo di passare $scope.formData
al servizio
Idea duro sarebbe, nel controller, recipeService.saveRecipe($scope.formData);
ma non sono sicuro come raccogliere che dal servizio,
quando ho cambiato il servizio this.saveRecipe(val) = save;
che non funziona :(
qualsiasi aiuto sarebbe appriciated
Il salvataggio non è indefinito quando viene assegnato a saveRecipe. Metti il compito dopo la funzione di salvataggio.Inoltre, normalmente non è necessario costruire manualmente formData. Di solito uno si legherebbe ad un modello e poi passerebbe il modello per salvare la funzione di precipice – pixelbits
Passa la tua variabile come parametro – Satpal
@pixelbits, grazie per la risposta .. Ho un modello che lega i valori dal modulo. quello che non riesco a capire è come passare il modello alla funzione 'saveRecipe' nel servizio ?! – sameera207