我想找出以下錯誤的原因。Typescript編譯錯誤TS2307:無法找到模塊與angular2 rc5和ngModule
app/src/app.module.ts(13,33): error TS2307: Cannot find module 'src/components/test/test.module
我使用Angular2 RC5並創建了一個功能模塊,並將其導入在app.module.ts
文件。我正在使用延遲加載模塊與路由器。
app.module.ts
看起來像這樣
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { routing } from './app.routes';
/* App Root */
import { AppComponent } from './app.component';
/* Feature module */
import { TestModule } from 'src/components/test/test.module';
@NgModule({
imports: [ BrowserModule, routing ],
declarations: [ AppComponent ],
bootstrap: [ AppComponent ],
providers: []
})
export class AppModule { }
test.module.ts
看起來像這樣
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { TestComponent } from './test.component';
import { routing } from './test.routes';
@NgModule({
imports: [ CommonModule, routing ],
declarations: [ TestComponent ],
providers: []
})
export default class TestModule { }
app.routes.ts
看起來像
import { Routes, RouterModule } from '@angular/router';
export const routes: Routes = [
{
path: '',
redirectTo: '/test',
pathMatch: 'full'
},
{
path: 'test',
loadChildren: 'src/components/test/test.module'
}
];
export const routing = RouterModule.forRoot(routes);
test.routes.ts
看起來像
import { Routes, RouterModule } from '@angular/router';
import { TestComponent } from './test.component';
const routes: Routes = [
{ path: '',
component: TestComponent }
];
export const routing = RouterModule.forChild(routes);
當我嘗試使用default
關鍵字編譯test.module.ts
文件時出現上述錯誤。如果我刪除它,錯誤消失。但當然,在這種情況下,我將無法使用延遲加載功能模塊。
有沒有人遇到過這個?
啊,我上面寫的白色代碼不好的例子。感謝指點。我從'src/components/test/test.module'導入導入{TestModule}; 除此之外,對於TestModule的延遲加載,我們不需要在AppModule中添加它。不是嗎? –
將其添加到導入中:'@NgModule({CommonModule,routing,TestModule] }' –
我試圖實現https://angular.io/docs/ts/latest/guide/ngmodule .html#!#懶惰加載 我應該添加更多有問題的文件來說清楚。 –