【问题标题】:Error: BrowserModule has already been loaded错误:BrowserModule 已加载
【发布时间】:2019-11-24 09:09:33
【问题描述】:

我正在尝试使用延迟加载我的模块之一。

导航到模块时出现此错误:

BrowserModule 已加载。如果您需要从延迟加载的模块中访问常用指令,例如 NgIf 和 NgFor,请改为导入 CommonModule。 错误:BrowserModule 已加载。如果您需要从延迟加载的模块中访问常用指令,例如 NgIf 和 NgFor,请改为导入 CommonModule

我已经从我的项目中完全删除了 BrowserModuleCommonModule 但仍然出现此错误。也许其他一些模块仍在使用它(@angular/material?)。

有什么建议吗?

【问题讨论】:

  • 可以分享模块代码吗?
  • 也许这是一种隐含的用法。你在某处使用BrowserAnimationsModule 吗? Angular Material 本身并不将其包含在其模块中。
  • This 可能会对您有所帮助。
  • 也检查this
  • 我在我的共享模块上使用BrowserAnimationsModule。我也将共享模块导入到我的延迟加载模块中。

标签: angular lazy-loading


【解决方案1】:

解决了。

在我的SharedModule 上,我有一些使用BrowserModule 的第三方模块,例如: RecaptchaModuleRecaptchaFormsModuleBrowserAnimationsModule

由于我在我的延迟模块上使用SharedModule,所以当我导航到延迟加载路线时,BrowserModule 必须重新加载。

我只在相关模块上导入RecaptchaModuleRecaptchaFormsModule

我正在将BrowserAnimationsModule 导入到我的AppModule

我正在我的SharedModule 上导入和导出CommonModule

我仍然没有在任何地方(直接)导入BrowserModule

感谢您@ChrisY 的帮助。

【讨论】:

    猜你喜欢
    • 2017-01-10
    • 1970-01-01
    • 2018-02-09
    • 2019-11-17
    • 2019-02-27
    • 2020-10-24
    • 1970-01-01
    • 2017-12-28
    • 2014-01-08
    相关资源
    最近更新 更多