Aus meiner Sicht möchte ich machen:Wohin mit benutzerdefinierten Funktionen in Angular JS?
<p>
{{ say() }}
</p>
Wo say
als solche definiert:
say = function() {
return "Hello World";
}
ich es in meinem Controller definieren:
function TestCtrl($scope) {
$scope.say = function() { ... };
}
es ist aber dann nur innerhalb dieses Controllers zugänglich.
Wenn ich die Funktion außerhalb der Angular-Dateistruktur definiere, gibt sie nichts aus. Gleiches, wenn ich es in meiner Datei definiere, aber außerhalb eines Kontrollerfunktionsbereichs.
Wo ist der richtige Ort, um meine Funktion zu platzieren, damit ich es in jedem Controller rendern kann?
Ehrfürchtig ... Ich hatte erwartet, dass es in den Diensten ist, aber konnte die Syntax nicht finden, um es in –
hinzuzufügen Just FYI, eine alternative Syntax (ich bevorzuge 'Service' statt 'Factory' zu sehen/lesen wenn ich nur eine Konstruktorfunktion brauche): .service ('myService', function() { this.say = function() {return "Hallo Welt";} }); –
Das "Problem" bei einem ordnungsgemäßen Service besteht darin, dass Sie bei jeder Nutzung des Service eine neue Instanz dieses Service erhalten. In diesem Fall ist es vielleicht nicht die beste Idee. – Spock