Ebl*_*eme 2 url customization url-rewriting angular
我想看到用户的用户名作为URL的一部分。例如:
我有这样的网址:
www.undefiend.com/panel/dashboard
Run Code Online (Sandbox Code Playgroud)
我想为每个用户自定义它。像这样:
www.undefiend.com/user1/dashboard
Run Code Online (Sandbox Code Playgroud)
要么
www.undefiend.com/michael/mails
要么
www.undefiend.com/richard/profile
其他...
如何在Angular 2或更高版本中做到这一点?
任何帮助都会很棒。感谢帮助。
在路由中使用带有参数的路由器
routes = [
{ path: ':user', children: [
{ path: 'dashboard', component: DashboardComponent, }
]},
{ path: '**', component: 'LoginComponent' }
];
Run Code Online (Sandbox Code Playgroud)
然后在登录组件中,与用户一起导航到该路线
this.router.navigate(['/' + username, 'dashboard']);
Run Code Online (Sandbox Code Playgroud)
另请参阅https://angular.io/docs/ts/latest/guide/router.html#!#can-activate-guard