ich Mühe, mich auf, herauszufinden, wie Parameter zu übergeben von meinem angular
controller
zu service
AngularJS: passing params von Controller-Service
#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
}
}]);
Was ich versuche, hier zu tun ist, bekommen die $scope.formData
von meiner Form und Steuerung, das zu service
, per meinem Verständnis passieren sollen, kann ich $scope
nicht im service
verwenden, so muß ich die Weitergabe $scope.formData
an den Service, einen Weg finden
harte Idee wäre, in der Steuerung, recipeService.saveRecipe($scope.formData);
aber ich bin nicht sicher, wie das aus dem Dienst zu sammeln,
wenn ich den Dienst geändert this.saveRecipe(val) = save;
es funktioniert nicht :(
jede Hilfe appriciated würde
Speichern ist undefiniert, wenn es saveRecipe zugeordnet ist. Fügen Sie die Zuweisung nach der Speicherfunktion ein.Normalerweise müssen Sie formData nicht manuell erstellen. Normalerweise würde man an ein Modell binden und dann das Modell an saveRecipe übergeben. – pixelbits
Übergeben Sie Ihre Variable als Parameter – Satpal
@pixelbits, danke für die Antwort .. Ich habe ein Modell, das die Werte aus dem Formular bindet. Was ich nicht herausfinden kann ist, wie man das Modell an die 'saveRecipe' Funktion im Service weiterleitet? – sameera207