注意:我在SO上搜索了十几个关于延迟加载的相关问题,但我无法使用它们来解决我的问题。
Error: Cannot find 'ContactModule' in 'app/contact.module'
我已经开始使用基于Angular CLI的新项目,并且Windows中的节点控制台偶尔会提到webpack: Compiling...
所以我相信我正在使用它,但我在项目中看不到任何webpack.config.js提到的其他问题需要改变。
这是我的app.module.ts
:
const appRoutes: Routes = [
{ path: '', component: HomeComponent },
{ path: 'contact', loadChildren: 'app/contact.module#ContactModule' },
];
//...imports...
@NgModule({
declarations: [
AppComponent,
HomeComponent,
// ContactComponent,
// ContactFormComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
JsonpModule,
RouterModule.forRoot(appRoutes)
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
我的延迟加载子模块:
//...imports...
const ROUTES = [
{ path: '', component: ContactComponent },
];
@NgModule({
declarations: [
ContactComponent,
ContactFormComponent
],
imports: [RouterModule.forChild(ROUTES)],
})
class ContactModule {}
答案 0 :(得分:1)
我花了一些时间来弄清楚这一点,因为我遇到的很多答案都没有在他们的例子中...
延迟加载的模块需要在类中override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "restaurantcell") as? RestaurantTableCell
let restaurant: Restaurant = restaurantArray[indexPath.row]
cell?.name?.text = restaurant.name
cell?.picture?.image = restaurant.image
return cell!
}
,并且需要导入export
以及您正在使用的任何其他内容,例如表单。
答案 1 :(得分:1)
首先,您应该导出ContactModule:
export class ContactModule {}