在哪里导入(导出?)使用 forRoot 模块



我正在使用ng2-bootstrap,并导入ModalModule.forRoot()来完成模态使用。我正在尽我所能遵循 Angular 风格指南。我需要在我的应用程序中的更多位置使用模态,而不是以前,并且我正在尝试将导入移动到更全局的模块。问题是 Angular 不会让我从我的共享模块或核心模块中导出它,因为它使用 forRoot() .遵循最佳实践,我明白我不应该在我的AppModule中导入它;他们说AppModule如果保持最小并且仅用于导入 CoreModule 和引导应用程序,它会更稳定。那么我在哪里导入它呢?

当使用ModalModule.forRoot()时,它会在应用程序的基础注册只需要一次的东西。

然后,您可以在任何需要的地方导入ModalModule,它将使用由.foorRoot()创建的单例对象。

所以在你的情况下,你应该在AppModule中使用ModalModule.foorRoot()然后在您的共享模块中,您应该首先imports: [ModalModule],然后exports: [ModalModule],以便它在任何地方都可用。

附言。有一个更完整的引导项目,由为 angular 1 做 ui-bootstrap 的同一个人完成,称为:https://ng-bootstrap.github.io

最新更新