tablas por paso pasar parametros formularios enviar entre dinamicas componentes angularjs

angularjs - por - paso de parametros entre componentes angular 2



¿Cómo pasar los parámetros cuando se usa el servicio de recursos? (2)

Creo que veo tu problema, necesitas usar la sintaxis @ para definir los parámetros que pasarás de esta manera, tampoco estoy seguro de qué nombre de usuario o contraseña están haciendo, no parece que los defines en ningún lado y no están siendo utilizado como parámetros de URL, ¿están siendo enviados como parámetros de consulta?

Esto es lo que puedo sugerir basado en lo que veo hasta ahora:

.factory(''MagComments'', function ($resource) { return $resource(''http://localhost/dooleystand/ci/api/magCommenct/:id'', { loginID : organEntity, password : organCommpassword, id : ''@magId'' }); })

La cadena @magId le dirá al recurso que reemplace :id con la propiedad magId en el objeto que lo pasa como parámetros.

Sugiero leer la documentación aquí (sé que es un poco opaco) con mucho cuidado y mirando los ejemplos hacia el final, esto debería ayudar mucho.

Una pregunta muy rookie-ish:

Estoy intentando construir un objeto de recurso usando el método de fábrica:

.factory(''Magazines'', [function ($resource) { var url = document.URL; var urlArray = url.split("/"); var organId = urlArray[urlArray.length-1]; return $resource(''http://localhost/ci/api/magazines/:id'', { loginID : organEntity, password : organCommpassword, id : organId }); }])

Este método es fácil porque todos los parámetros están predefinidos, organEntity y organCommpassword están definidos dentro de la etiqueta.

Ahora, para un objeto de recursos diferente, necesito pasar el parámetro cuando se llame a la fábrica.

Me imagino que el código de llamada de este objeto de recurso debería verse así:

.controller(''ResrouceCtrl'', function($scope, Magazines) { $scope.magazines = Magazines.query(); });

Sé que el método query () puede agregar parámetros: Magazines.query(params, successcb, errorcb);

Me pregunto si solo paso parámetros, ¿puedo obtener el parámetro en la fábrica? ¿Cómo especificar los parámetros pasados ​​en el método de fábrica?

Por ejemplo, ahora supongamos que ya no puedo obtener el URL de la URL, necesito pasarlo desde mi controlador, ¿cómo recibir la IDENTIFICACIÓN DEL ORGANISMO en el método de fábrica?

Aquí está mi recurso js:

.factory(''MagComments'', function ($resource) { return $resource(''http://localhost/dooleystand/ci/api/magCommenct/:id'', { loginID : organEntity, password : organCommpassword, id : ''@magId'' //pass in param using @ syntax }); })

Aquí está mi controlador:

$scope.magComments = MagComments.query({magId : 1});

Intenté pasar el parámetro, pero causa un error


Le sugiero que use el provider . Proporcionar es bueno cuando quiere configurarlo antes de usar (contra Servicio / Fábrica)

Algo como:

.provider(''Magazines'', function() { this.url = ''/''; this.urlArray = ''/''; this.organId = ''Default''; this.$get = function() { var url = this.url; var urlArray = this.urlArray; var organId = this.organId; return { invoke: function() { return ...... } } }; this.setUrl = function(url) { this.url = url; }; this.setUrlArray = function(urlArray) { this.urlArray = urlArray; }; this.setOrganId = function(organId) { this.organId = organId; }; }); .config(function(MagazinesProvider){ MagazinesProvider.setUrl(''...''); MagazinesProvider.setUrlArray(''...''); MagazinesProvider.setOrganId(''...''); });

Y ahora controlador:

function MyCtrl($scope, Magazines) { Magazines.invoke(); .... }