当我使用浏览器直接导航到路线时,应用程序重新引导,然后它将我带到正确的页面/组件。 当我通过一个按钮导航时,它会直接带我到那里,而无需重新启动应用程序。Angular 4路由器:直接浏览器导航重新启动应用程序
这是预期的行为? 我该如何预防?
问题是我们使用身份服务器进行身份验证。它需要一个回调url,它被视为直接浏览器导航,并且应用程序重新启动。
我们的应用程序,routing.module看起来是这样的:
const routes: Routes = [
{ path: '', redirectTo: '/dashboard', pathMatch: 'full' },
{ path: 'dashboard', component: DashboardComponent, canActivate: [RouteGuardService] },
{ path: 'users', component: UsersMainComponent},
{ path: 'vendors', component: VendorMainComponent},
{ path: 'invoices', component: InvoicesMainComponent},
{ path: 'offers' , component: EsdMainComponent},
{ path: 'settings' , component: SettingsMainComponent},
{ path: 'callback' , component: CallbackComponent},
{ path: 'createvendor' , component: CreateVendorsComponent, canActivate: [RouteGuardService]},
{ path: 'customerdashboard' , component: CustomerDashboardComponent},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule],
providers: [RouteGuardService]
})
export class AppRoutingModule { }
回调路径是身份服务器的回调URL。
您是否找到任何解决方法? – Boris