我的 Angular 路由配置如下:
export const routes: Routes = [
{ path: 'mgmt', ... },
{ path: 'about', ... },
{ path: '**', component: PageNotFoundCmp }
];
但现在在一个页面上,有一个链接 ( <a href="/help/en/index.html" target="_blank">
) 到帮助页面,这些页面是托管在同一服务器上的静态资源。通过上面的路由配置,显然它会匹配到其他人 **
- 找不到页面。
假设我们不能在另一个域中托管帮助资源,有没有办法排除 /help/**
Angular 路由的路径?还是您认为这是支持 angular 的有效功能请求?
最佳答案
如此处所述angular 2 exclude url in routing唯一的解决方案似乎是在您的 RouterModule 配置中设置 useHash: true
:
@NgModule({
imports: [
RouterModule.forRoot(
[
{
path: 'login',
loadChildren: './login/login.module#LoginModule'
},
{
path: '**',
redirectTo: ''
},
],
{
useHash: true,
onSameUrlNavigation: 'reload'
}
)
],
exports: [RouterModule]
})
export class AppRoutingModule { }
关于angular - 从 Angular 2+ 的路由中排除特定路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43488480/