2017-02-25 2 views
1

Ich möchte den Benutzernamen eines Benutzers als Teil der URL sehen. Zum Beispiel:Anpassen der URL für jeden Benutzer in Angular 2

Ich habe eine URL wie folgt aus:

www.undefiend.com/panel/dashboard 

möchte ich es für jeden Benutzer anpassen. Wie folgt aus:

www.undefiend.com/user1/dashboard 
  • oder

    www.undefiend.com/michael/mails

  • oder

    www.undefiend.com/richard/profile

ein anderer ...

Wie kann ich tun, dass in Angular 2 oder höher?

Alle Hilfen wären toll. Danke für die Hilfe.

Antwort

1

Verwenden Sie den Router mit einem param in der Route

routes = [ 
    { path: ':user', children: [ 
     { path: 'dashboard', component: DashboardComponent, } 
    ]}, 
    { path: '**', component: 'LoginComponent' } 
]; 

Und in der Login-Komponente, die Sie dann mit dem Benutzer

this.router.navigate(['/' + username, 'dashboard']); 

Siehe auch https://angular.io/docs/ts/latest/guide/router.html#!#can-activate-guard

+0

Es ist sinnvoll, die Route navigieren. Starten Sie den Link mit einem Parameter. Dann setze Kinder. Danke @ Günter Zöchbauer. Ich denke, du bist am nützlichsten bei eckigen im Stackoverflow. – Ebleme

+0

Danke, froh zu hören, dass Sie es hilfreich finden :) –