当我创建一个新的页面组件时,现在必须将其放置在声明以及entryComponents Array中。为什么必须同时在两个地方?
例如,我刚刚创建了一个新的login.page.ts文件,但是我必须在声明和entryComponents数组中都声明它(顺便说一句,它不是entryComponent)
app.module.ts
@NgModule({
declarations: [
MyApp,
LoginPage
],
imports: [
IonicModule.forRoot(MyApp),
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
LoginPage
],
providers: [{provide: ErrorHandler, useClass: IonicErrorHandler}]
})
export class AppModule {}
Run Code Online (Sandbox Code Playgroud)
如果应用程序的其余部分配置正确,则实际上不需要放置entryComponent。
Angular 会自动将某些组件添加到入口组件中。中列出的组件
@NgModule.bootstrap会自动添加。中引用的组件router configuration会自动添加。这两种机制几乎占据了所有的入口组件。如果您的应用程序碰巧以某种其他方式按类型引导或动态加载组件,则必须将其显式添加到entryComponents。
尽管将组件添加到此列表中没有什么害处,但最好只添加真正的入门组件。不要包含在其他组件的模板中引用的组件。
来自: https: //angular.io/docs/ts/latest/cookbook/ngmodule-faq.html# !#q-when-entry-components
| 归档时间: |
|
| 查看次数: |
1414 次 |
| 最近记录: |