简体   繁体   English

Angular 版本 11 中找不到惰性模块

[英]Lazy module not found in Angular version 11

This app is trying to load the BookModule lazily with this configuration:这个应用程序正在尝试使用以下配置延迟加载BookModule

const routes: Routes = [
  { path: "", redirectTo: "/books", pathMatch: "full" },
  {
    path: "books",
    loadChildren: "./modules/book/book.module#BookModule",
    canActivate: [AuthGuard]
  },
  { path: "login", component: LoginComponent }
];

And it's producing the error:它正在产生错误:

Error: Cannot find 'BookModule' in './modules/book/book.module'错误:在“./modules/book/book.module”中找不到“BookModule”

Thoughts?想法?

Seems like your Angular version is 11.好像你的 Angular 版本是 11。

The lazy loading syntax changed.延迟加载语法已更改。 It is something like this now现在是这样的

const routes: Routes = [
  {
    path: 'items',
    loadChildren: () => import('./items/items.module').then(m => m.ItemsModule)
  }
];

So your code should be like this所以你的代码应该是这样的

const routes: Routes = [
  { path: "", redirectTo: "/books", pathMatch: "full" },
  {
    path: "books",
    loadChildren: () => import('./modules/book/book.module').then(m => m.BookModule),
    canActivate: [AuthGuard]
  },
  { path: "login", component: LoginComponent }
];

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM