In einer AngularJs-App versuche ich, einen benutzerdefinierten Dienst zu verwenden, um die Hauptdaten der App "Elemente" zu halten. Allerdings möchte ich die Daten beim ersten Laden der Seite in den Dienst laden, um eine separate Ajax-Anfrage an den Server zu vermeiden. Was wäre der sauberste Weg, dies zu tun?AngularJS - Bootstrapping von Daten in einen Dienst beim Laden der Seite
Hier ist ein Ausschnitt aus meinem Dienst als Referenz:
app.factory('items', function() {
var itemsService = {},
items = [];
itemsService.list = function() {
return items;
};
itemsService.add = function() {
/* ... */
};
return itemsService;
});
Und auf dem Back-End Ich bin mit node.js + Express.js + Jade, so würde ich mit den Daten in der Seite wird die Injektion:
!{JSON.stringify(items)}
Mögliches Duplikat. Bessere Antworten im Original - [Wie man Daten so bootet, wie sie von einem $ Ressourcendienst in Angular.js geholt wurden] (http://stackoverflow.com/questions/12451864/how-to-bootstrap-data-as-it- es-wurde-geholt-by-a-resource-service-in-eckigen-js) – EBarr