我正在使用Angular v6.1.0和。我的路由文件在这里:
const routes: Routes = [
{
path: '', component: DashboardComponent, children: [
{ path: '', redirectTo: 'activity', pathMatch: 'full' },
{ path: 'activity', component: ActivityComponent },
{ path: 'recent-activity', component: RecentActivityComponent },
{ path: 'notification', component: NotificationComponent }
]
},
];
这是我的订阅导航事件的代码:
router.events.subscribe((event: Event) => {
if (event instanceof NavigationStart) {
// Do something here
} else if (event instanceof NavigationEnd) {
// Do something here
}
});
当我使用router.navigation时,会触发NavigationEnd。
但是,如果我转到 / dashboard 路由器并将其重定向到上述路由文件中的 / dashboard / activity ,则不会触发该事件。
更新
这是我在StackBlitz上的示例
只需输入没有任何路径的域,控制台重定向到登录时仅登录“ /”(我更喜欢登录“ / login”)