In meiner Anwendung von Angular2 habe ich eine einfache Notwendigkeit, wo ich ausblenden Menüleiste basierend auf Login-Erfolg zeigen möchte. Dafür habe ich einen Dienst, der nur einen LoginSuccess boolean varilable, die ich auf Login-Komponente gesetzt würde und auf app.component.html für [hidden]=LoginSuccess
nav-Tag verwenden.Angular2 Global Service Provider
Problem ich bin vor, auch nach app.global.service.ts
durch constructor
von app.component.ts & login.component.ts
Wert Injektion nicht persistierende und jeder Konstruktor schafft neue Aufgabe app.global.service.ts
.
Frage: Wie kann ich Einzelwert über Anwendung durch Service bestehen erzielen. Irgendwo in Angular2-Dokumenten habe ich gelesen, dass der injizierbare Dienst Singleton ist.
und was ist, wenn wir einige Komponenten zum Zeitpunkt der Bootstrap zur Verfügung stellen möchten, wie haben wir im Globalservice gemacht? –
Ich sage nur: Wenn die Komponente, in die Sie den Singleton (global) Service injizieren, in einer separaten Datei ist, müssen Sie trotzdem eine Import-Anweisung in dieser Datei verwenden: 'import {AuthService} from ./ services/auth.service ";' – Samuel
Aber wenn ich es nicht zu den Providern hinzufüge: [] bekomme ich einen Fehler; AUSNAHME: Kein Provider für GlobalService! –