2017-02-25 2 views
1

Je souhaite voir le nom d'utilisateur d'un utilisateur dans le cadre de l'URL. Par exemple:Personnaliser l'URL de chaque utilisateur dans Angular 2

J'ai une URL comme ceci:

www.undefiend.com/panel/dashboard 

Je veux le personnaliser pour chaque utilisateur. Comme ceci:

www.undefiend.com/user1/dashboard 
  • ou

    www.undefiend.com/michael/mails

  • ou

    www.undefiend.com/richard/profile

et autres ...

Comment puis-je faire cela dans Angular 2 ou plus?

Toute aide serait géniale. Merci pour l'aide.

Répondre

1

Utilisez le routeur avec un param sur la route

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

Et dans le composant de connexion vous naviguez ensuite la route avec l'utilisateur

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

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

+0

Il est logique. Démarrer le lien avec un paramètre Ensuite, définissez les enfants. Merci @ Günter Zöchbauer. Je pense que vous êtes le plus utile sur angulaire dans le stackoverflow. – Ebleme

+0

Merci, heureux de vous entendre trouver utile :) –