En mi opinión, quiero hacer:¿Dónde ubicar las funciones definidas por el usuario en Angular JS?
<p>
{{ say() }}
</p>
Dónde say
se define como tal:
say = function() {
return "Hello World";
}
puedo definirlo en mi regulador:
function TestCtrl($scope) {
$scope.say = function() { ... };
}
Pero entonces es solo accesible dentro de ese controlador.
Si defino la función fuera de la estructura de archivos Angular, no muestra nada. Lo mismo si lo defino en mi archivo controllers.js
, pero fuera de un ámbito de función de controlador.
¿Dónde está el lugar adecuado para poner mi función, así que puedo representarla en cualquier controlador?
Impresionante ... esperaba que fuera con los servicios, pero no pude encontrar la sintaxis para agregarlo en –
Solo FYI, una sintaxis alternativa (prefiero ver/leer 'servicio' en lugar de 'fábrica' si solo necesito una función de constructor): .service ('myService', function() { this.say = function() {return "Hello World";} }); –
El "problema" con un servicio adecuado es que cada vez que utiliza el servicio, obtiene una nueva instancia de ese servicio. En este caso, puede que no sea la mejor idea. – Spock