ich ein factory
wie dieses:Wie Fabrik für den Zugriff auf von der Steuerung
rasm.factory('serviceUrl',[function(){
function serviceUrl(){
this.p = location.protocol;
this.h = getHost();
}
serviceUrl.prototype.getServiceUrl = function(){
return this.p +'//'+ this.h + '/services/'
}
}])
ich das objektorientierte way.This in JavaScript implementiert haben, ist die Ressource, die i https://medium.com/opinionated-angularjs/angular-model-objects-with-javascript-classes-2e6a067c73bc#.du8tor7h2
Mein Problem verwendet haben, ist , wie kann ich auf diese getServiceUrl Funktion von meinem Controller zugreifen. ist das überhaupt möglich? Danke Jungs
Ich dachte, ich muss ein Objekt von ServiceUrl erstellen. wie folgt ** var obj = new serviceUrl(); obj.getServiceUrl() ** –
Nein, Fabriken in Angular sind Singleton während des gesamten Lebenszyklus Ihrer App, dh Angular macht dasselbe ('new serviceUrl') intern nur einmal, dann wird dieselbe Instanz überall mit DI verfügbar gemacht. –
eigentlich ist das nicht wahr, eckig ruft nicht das NEUE für Fabriken auf, sondern führt nur das Rezept aus, wenn es das Ergebnis zurückgibt (und zwischenspeichert). In diesem Fall denke ich, dass es angemessener ist, einen Dienst zu nutzen. – Karim