AngularJS, ui.router, Ladevorlage und Controller basierend auf der Benutzerrolle

Ich habe eine Single Page App entwickelt, die eine REST-API verwendet. Benutzer müssen sich anmelden, um auf die Anwendung zugreifen zu können. Wenn sich ein Benutzer anmeldet, wird er zu / dashboard umgeleitet. Auf dieser URL / Route möchte ich basierend auf der Rolle des Benutzers (z. B. normal) eine andere Vorlage und einen anderen Controller ladenBenutzer oderAdministrator Benutzer).

Ich habe angeschauthttps://github.com/angular-ui/ui-router/wiki im Abschnitt Vorlagen, aber keine der Optionen unterstützen, was ich versuche zu erreichen.

Mit templateUrl und function (stateParams) kann ich nichtinjizieren der Dienst, der mir hilft, die Benutzerrolle zu bestimmen, damit ich die Vorlage laden kann, z. Ansichten /Benutzer/dashboard.html oder Ansichten /Administrator/dashboard.htmlMit templateProvider soll der Dienst eingefügt werden, mit dem ich die Benutzerrolle ermitteln kann. Wie lade ich dann die Vorlage?

Jede Lösung sollte auch verschiedene Controller basierend auf der Benutzerrolle laden, z. B. UserDashboardController oder AdminDashboardController.

Ich benötige also unbedingt eine einzelne Route, die eine andere Vorlage und einen anderen Controller auf der Grundlage einer Benutzerrollenvariablen lädt, die in einem Dienst festgelegt wird, wenn sich ein Benutzer anmeldet.

Denke ich in die richtige Richtung oder sollte ich eine andere Lösung implementieren?

Jede Hilfe hierzu wäre sehr dankbar.

Antworten auf die Frage(9)

Ihre Antwort auf die Frage