要在Angular应用中实现延迟加载,我们需要添加模块路由/主页(/ public /),然后添加内页路由(/ contact-us),如
{ path: 'public', loadChildren: '../public/public.module#PublicModule' }
和在PublicRouting内部
{ path: 'contact-us', component: ContactUsComponent }
现在为ContactUs组件提供类似http://myappurl/public/contact-us的url。但是我想实现延迟加载,还需要访问带有http://myappurl/contact-us之类的链接的页面,以便我的SEO正常工作。我不想将每个页面都设为模块,而我的模块有多个页面
如果要实现此目标:http://myappurl/contact-us
用模块布线中的''替换public
{ path: '', loadChildren: '../public/public.module#PublicModule' }
然后什么也不要更改
或:
用模块中的'contact-us'替换public
{ path: 'contact-us', loadChildren: '../public/public.module#PublicModule' }
然后在public.module的路由模块内部
{ path: '', component: ContactUsComponent , pathMath:"full" }
这可能是您所需的解决方案:
在模块路径中用[替换public
即。 { path: '', loadChildren: '../public/public.module#PublicModule' }
并使所有内容保持不变。
因此,您的最终路径将是http://myappurl/contact-us
由于您无需在路由中特别提及public
,因此您将自动重定向到此路径。