Angular 以角度显示模块内部的单独404 not found页面

Angular 以角度显示模块内部的单独404 not found页面,angular,typescript,angular2-routing,angular-routing,Angular,Typescript,Angular2 Routing,Angular Routing,在我的Angular应用程序中,我希望有两个单独的页面未找到页面 在应用程序根目录中,如果用户出现以下情况,则有一个应用程序根目录:。这很好 但是,我在我的管理模块中添加了一个AuthGuard。如果用户登录并导航到,我希望他们转到管理模块中的“未找到”页面。由于某些原因,他们正在注销并重定向回登录页面 请参考下面的示例项目(尝试转到/admin,登录,然后将路径更改为/admin/xyz并按enter键): 同样,危机中心也会发生同样的情况,它不是一个受保护的模块。尝试转到/crisis c

在我的Angular应用程序中,我希望有两个单独的页面未找到页面

在应用程序根目录中,如果用户出现以下情况,则有一个应用程序根目录:。这很好

但是,我在我的管理模块中添加了一个AuthGuard。如果用户登录并导航到,我希望他们转到管理模块中的“未找到”页面。由于某些原因,他们正在注销并重定向回登录页面

请参考下面的示例项目(尝试转到/admin,登录,然后将路径更改为/admin/xyz并按enter键):


同样,危机中心也会发生同样的情况,它不是一个受保护的模块。尝试转到/crisis center/xyz,您将被重定向回crisis center,而不是crisis-找不到页面

,这是因为angular(AuthService)中的服务对于延迟加载的模块不作为单例共享。因此,每次直接从地址栏转到时,都会创建一个新的服务实例,该实例将isLogged设置为false,并将您抛出到登录页面。但是,如果您登录并通过 路由器链接到,您将获得no页面


找到,这是因为您在模块的同一服务实例中。

回答得很好。因此,我可以停止延迟加载模块,以便每次都重新加载整个应用程序,也可以不这样做。在每个单独的模块(系统的功能)中都有一个未找到的页面是否常见?看起来大多数人在外表上都有一个,但问题是我的特征有不同的外观和感觉。因此,如果用户在管理功能中,我希望页面不在该模板内,如果用户在其他功能中,我希望页面不在该模板内。所以,除非我停止延迟加载,否则这基本上是不可能的吗?