Angular 无法通过PopoverController打开共享模块的组件
我的爱奥尼亚5.0.0项目中有一个聊天页面组件。我只想通过PopOverController打开聊天页面。我知道我必须导入app.module.ts中的ChatPage模块,以便通过PopOverController打开它。我已经成功地为其他组件完成了这项工作。但这里的问题是ChatPage组件是共享模块的一部分。因此,我将共享模块导入到其他需要聊天页面的模块中。(我不是在app.module.ts中导入共享模块,而是将其导入每个单独的模块) 所以,每当我试图将ChatPage componet作为popover浏览器控制台打开时,都会出现以下错误Angular 无法通过PopoverController打开共享模块的组件,angular,typescript,ionic2,Angular,Typescript,Ionic2,我的爱奥尼亚5.0.0项目中有一个聊天页面组件。我只想通过PopOverController打开聊天页面。我知道我必须导入app.module.ts中的ChatPage模块,以便通过PopOverController打开它。我已经成功地为其他组件完成了这项工作。但这里的问题是ChatPage组件是共享模块的一部分。因此,我将共享模块导入到其他需要聊天页面的模块中。(我不是在app.module.ts中导入共享模块,而是将其导入每个单独的模块) 所以,每当我试图将ChatPage componet
core.js:15724错误:未捕获(承诺中):错误:未找到ChatPage的组件工厂。您是否将其添加到@NgModule.entryComponents?
错误:未找到ChatPage的组件工厂。您是否将其添加到@NgModule.entryComponents?
at-noComponentFactoryError(core.js:9877)
在CodegenComponentFactoryResolver.push../node_modules/@angular/core/fesm5/core.js.CodegenComponentFactoryResolver.resolveComponentFactory(core.js:9915)
在attachView(fesm5.js:2976)
在fesm5.js:2917
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke(zone.js:391)
在Object.onInvoke(core.js:17299)
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke(zone.js:390)
在Zone.push../node_modules/Zone.js/dist/Zone.js.Zone.run(Zone.js:150)
在NgZone.push../node_modules/@angular/core/fesm5/core.js.NgZone.run(core.js:17213)
在fesm5.js:2912
在resolvePromise(zone.js:831)
在zone.js:741
at被拒绝(tslib.js:69)
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke(zone.js:391)
在Object.onInvoke(core.js:17299)
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invoke(zone.js:390)
在Zone.push../node_modules/Zone.js/dist/Zone.js.Zone.run(Zone.js:150)
在zone.js:889
在ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask(zone.js:423)
最终得到了一个解决方案
将entryComponents:[ChatPage]
添加到shared.module.ts中的@NgModule({})
部分,然后将共享模块导入app.module.ts