AngularJs: les Contrôleurs de service d'appels de méthode
J'ai essayé de créer une méthode dans la services.js :
var esServices= angulaire.module('esServices', []);
esServices.factory('boxItems', ['$http', function($http) {
................
}]);
esServices.factory('cartItems', ['$cookieStore', function($cookieStore) {
array = $cookieStore.get('key');
var cartItems = new function(){},
cartItems.addItem = function(itemSelected){
$cookieStore.put('key', []);
array.push(itemSelected);
$cookieStore.put('key', array);
}
}]);
dans mon contrôleurs j'ai appeler le service méthode:
esControllers.controller('esList', ['$scope','cartItems','$cookieStore',
function($scope,cartItems,$cookieStore) {
cartItems.addItem($scope.element,function(){});
};
}]);
(itemSelected is an object)
Savez-vous si il est possible de transmettre des valeurs (objets) de Contrôleur de Service à la Méthode de cette façon?
Quelqu'un peut m'aider!!!
- Vous pouvez poster reste de la services.js?
- Vous n'avez pas de return dans votre service.
Vous devez vous connecter pour publier un commentaire.
alors appel à l'aide de
addItem:function(){...}, removeItem: function(){...}
. vous appelez ensuite chacune de ces méthodes dans le contrôleur à l'aide d'cartItems.method()
. Angulaire de services ont besoin d'une instruction de retour et dans ce cas, vous êtes de retour d'un objet de fonctions$scope.object
de la manette à votreaddItem()
fonction dans le service que vous appelezcartItems.addItem($scope.object)
.Vous devez injecter le service dans le contrôleur comme
Si vous souhaitez utiliser votre laide syntaxe 🙂 il suffit de retourner cartItems à partir de votre usine de