在AppRoutingModule中使用loadChildren和loadComponent一起进行延迟加载

问题描述 投票:0回答:1

我正在使用带有模块和独立组件的 Angular 18。

在我的 AppRoutingModule 中,我想使用 loadComponent() 和 loadChildren() 延迟加载我的独立组件以及模块。 但是,如果我导航到惰性组件路由 /lazyComponent 然后刷新页面,则页面刷新后,该组件不会加载。 我在 main.ts 中使用 bootstrapModule() 。

是否有可能,或者我是否也必须将我的模块转换为独立组件,然后使用 bootstrapApplication()?

我在 AppRoutingModule 中的代码如下所示:

{
        path: 'orders',
        loadComponent: () => import('./orders/orders.component').then(m => m.OrdersComponent)
    },
    {
        path: 'addresses',
        loadChildren: () => import('./addresses/addresses.module').then(m => m.AddressesModule)
},

如果我使用

{ 路径:'lazyComponent', 组件:LazyComponent },

没有延迟加载,刷新页面不会加载组件。

main.ts:

platformBrowserDynamic().bootstrapModule(AppModule)
    .catch(err => console.error(err));

angular
1个回答
0
投票

确保您已在

basehref
中添加了
index.html

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>My app</title>
    <meta charset="UTF-8" />
    <base href="/">
  </head>
  <body>
    <app-root>Loading...</app-root>
  </body>
</html>
© www.soinside.com 2019 - 2024. All rights reserved.