在Angular路由中找不到模块

Zai*_*que 2 angular2-routing angular

我的文件夹结构是:

+-- app.module.ts
+-- app.routing.ts
+-- app.component.ts
+-- account/
|   +-- account.module.ts
|   +-- account.routing.ts
|   +-- account.component.ts
Run Code Online (Sandbox Code Playgroud)

在我的app.routing.ts中,

  { path: 'account', loadChildren: './account/account.module#AccountModule' },
Run Code Online (Sandbox Code Playgroud)

而且,在account.routing.ts中,

  { path: 'login', component: LoginFormComponent}
Run Code Online (Sandbox Code Playgroud)

但是当我输入页面/帐户/登录时,出现以下错误:

NodeInvocationException:未捕获(承诺):错误:找不到模块“ ./account/account.module”。错误:找不到模块“ ./account/account.module”。

我尝试将./account/account.module#AccountModule更改为app / account / account.module#AccountModule,同样的错误。

有什么想法吗?提前致谢。

S.P*_*eep 6

你可以尝试改变

  { path: 'account', loadChildren: './account/account.module#AccountModule' }
Run Code Online (Sandbox Code Playgroud)

import {AccountModule} from './path';

{ path: 'account', loadChildren: ()=> AccountModule' }
Run Code Online (Sandbox Code Playgroud)

注意 -不要忘记如上所述导入模块


Ani*_*Das 0

确保您的帐户模块应具有如下所示的单一路由

路由代码,模块延迟加载后将被路由

const routes: Routes = [{
  path: ':something',
  component: AccountComponent,
}];

@NgModule({
  imports: [RouterModule.forChild(routes)],
  exports: [RouterModule]
})
export class AccountRoutingModule {
}
Run Code Online (Sandbox Code Playgroud)

调用核心模块中的路由模块

@NgModule({
  imports: [
    CommonModule,
    NgbModule.forRoot(),
    AccountRoutingModule,
    ...
Run Code Online (Sandbox Code Playgroud)