當我使用瀏覽器直接導航到路線時,應用程序重新引導,然後它將我帶到正確的頁面/組件。 當我通過一個按鈕導航時,它會直接帶我到那裏,而無需重新啓動應用程序。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