Jhipster Angular 2懒惰加载模块未找到例外

时间:2017-04-02 16:32:49

标签: angular angular-cli jhipster

我创建了Jhipster应用程序并尝试添加延迟加载模块,这会给模块找不到异常。

我按照" https://jaseb.github.io/angular2-example/"文章,但仍然是相同的例外。我试着自己请帮我进一步。请按以下步骤找到代码段。

app.route.ts

    import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {NavbarComponent} from "./layouts/navbar/navbar.component";

export const routes: Routes = [
    { path: '', component: NavbarComponent, outlet: 'navbar'},
    { path: 'lazy', loadChildren: 'app/modules/lazy/lazy.module#LazyModule' }
];

@NgModule({
    imports: [ RouterModule.forRoot(routes) ],
    exports: [ RouterModule ]
})
export class AppRoutingModule {
}

2 个答案:

答案 0 :(得分:1)

首先,您必须安装webpack插件angular-router-loader

npm install angular-router-loader --save-dev

然后在你的项目目录中打开webpack / webpack.common.js并在awesome-typescript-loader之后添加angular-router-loader,如下所示

loaders: [
'angular2-template-loader',
'awesome-typescript-loader',
'angular-router-loader' // here
]

路径应该没有应用前缀

{ path: 'lazy', loadChildren: './modules/lazy/lazy.module#LazyModule' }

答案 1 :(得分:0)

我在直角应用中使用延迟加载时遇到了类似的问题。 我将可以正常工作的应用程序与我的应用程序进行了比较,发现我的tsconfig.spec.json和tsconfig.app.json中都没有“ baseUrl”:“ ./”。 添加后,它就开始工作。

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "baseUrl": "./",  **<-- this was missing**
    "module": "es2015",
    "types": []
  },
  "exclude": [
    "src/test.ts",
    "**/*.spec.ts"
  ]
}

希望这会有所帮助