print inner convert agregar angularjs angularjs-factory

angularjs - inner - ng-bind-html



¿Puedo tener múltiples funciones en mi AngularJS Factory? (2)

Estoy siguiendo el Tutorial de los documentos oficiales de AngularJS y quiero saber si puedo agregar otra función a la fábrica de teléfonos para poder organizar mejor el código. Han declarado una función de "consulta", pero ¿y si quisiera agregar una función de consulta2 que haga referencia a una URL diferente ... digamos phones2 /: phoneName.json por ejemplo?

Declaración de fábrica:

var phonecatServices = angular.module(''phonecatServices'', [''ngResource'']); phonecatServices.factory(''Phone'', [''$resource'', function($resource){ return $resource(''phones/:phoneId.json'', {}, { query: {method:''GET'', params:{phoneId:''phones''}, isArray:true} }); }]);

He intentado varias cosas y ninguna de ellas parece estar funcionando: s

Esta answer parece estar en el camino correcto, pero la sintaxis de cada función de fábrica no coincide con la anterior.

Algo a lo largo de las líneas de:

phonecatServices.factory(''Phone'', [''$resource'', function($resource){ return { query: ... query2: ... } }]);


Este es el código de servicio:

myServices.factory(''Auth'', [''$resource'', function($resource){ return { Login: $resource(serviceURL + ''login'', {}, { go: { method:''POST'', isArray: false }}), Logout: $resource(serviceURL + ''logout'', {}, { go: { method:''POST'', isArray: false }}), Register: $resource(serviceURL + ''register'', {}, { go: { method:''POST'', isArray: false }}), }; } ]);

Y desde mi controlador solo tengo que agregar la función go () para que funcione:

Auth.Login.go({ username: $scope.username, password: $scope.password },

Supongo que podría haber llamado a la función go después del método y llamarlo "post ()" en lugar de claridad ...


Un ejemplo de esto es: Link for Demo

angular.module(''services'', []).factory(''factoryName'', ["$filter", function($filter) { var method1Logic = function(args) { //code }; var method2Logic = function(args) { //code }; return { method1: method1Logic, method2: method1Logic }; } ]).controller(''MainController'', ["$scope", "$rootScope", "$filter", "factoryName", function ($scope, $rootScope, $filter,factoryName) { $scope.testMethod1 = function(arg){ $scope.val1 = factoryName.method1(arg); }; $scope.testMethod2 = function(arg){ $scope.val2 = factoryName.method2(arg); }; }]);

Hay incluso una versión mejorada de esta versión: References

function AnotherService () { var AnotherService = {}; AnotherService.someValue = ''''; AnotherService.someMethod = function () { }; return AnotherService; } angular .module(''app'') .factory(''AnotherService'', AnotherService);