【发布时间】:2017-12-11 22:22:00
【问题描述】:
我有一个 Angular (4.2.5) 应用程序,在我的代码中的某个时刻,我这样做了:
this._appService
.post('/createhero/save', opts)
.subscribe(
(resData: any) =>
{
this._router.navigate(['home']);
}
);
对navigate() 的路由器调用不起作用 - 没有任何反应。我启用了路由调试,这就是我得到的:
所以导航被无故取消。在其他组件中,我有相同类型的 navigate()(也有一些在可观察的回调中),效果很好。路线/home 也可以。
我的想法开始用完了,我什至不知道为什么navigate() 在这种情况下不起作用。
【问题讨论】:
-
您在哪里使用导航代码?
-
在我的 CreateHeroComponent save() 方法中,由按钮
<button (click)="save()">Done</button>触发 -
对我来说,问题也来自一名警卫(
MsalGuard来自@azure/msal-angular@2.0.5),并且只发生在像“/foo”这样的小名路线上的初始导航(a来自@azure/msal-angular的错误;特别是,通过将路由重命名为“/foo-bar-baz”,问题消失了)
标签: javascript angular routes angular-routing