我想在我的Angular应用程序中显示带有自定义slug的页面,并设法通过添加带有CanActivate防护的通配符路径来检查当前浏览器路径是否与CMS中的页面相关联的slug:< / p>
{
path: '**',
loadChildren: './modules/content-page/content-page.module#ContentPageModule',
canActivate: [IsContentPage]
}
如果找到该页面,该应用程序会加载ContentPageModule,但现在我希望该应用程序在找不到该页面时显示404页面。优选地,URL将保持不变,因此我不想从IsContentPage保护中重定向。添加另一个没有防护的通配符路由不起作用:
{
path: '**',
loadChildren: './modules/not-found/not-found.module#NotFoundModule'
}
声明了这两个路由后,应用程序在IsContentPage返回false后显示空白页面。如果在ContentPageModule路由之前声明了NotFoundModule路由,那么总是会触发该路由。
我正在使用Angular Router的5.2版本。
有人可以帮助我吗?我应该如何解决这个问题?