角度循环模块依赖

时间:2017-06-30 11:33:46

标签: angular

我有以下循环模块依赖问题:

涉及的角度模块:

  1. DatabaseMenuModule - 搜索和查看数据库表
  2. DetailViewModule(数据库菜单模块的子项) - 查看表中的一个数据集
  3. SubtableModule - 如果单击外键,则在模式对话框中打开另一个DatabaseMenu实例 enter image description here
  4. 整体结构是一种包括递归在内的自我,因为每个数据集都可以有外键,因此打开(点击)另一个数据库菜单实例。 如图所示,我对模块进行了循环导入,因此无法正常工作。

    zone.js:917 Uncaught Error: Unexpected value 'undefined' imported by the module 'SubtableModule'
    

    但我也认为没有办法解决这个问题。

    有没有人有理解如何重新解决这个问题?

1 个答案:

答案 0 :(得分:1)

你必须摆脱循环引用。

您的SharedModule导入OneModule,它导入导入OneModule的SharedModule,依此类推。

为避免这种情况,您应该尝试让SharedModule拥有一个可以包含在所有组件中的SharedService,尝试重新组合服务中代码的“逻辑思维”。

如果要跨多个模块使用组件,则需要创建“共享”模块并将该组件添加到共享模块的导出中。然后将该共享模块添加到其他模块导入中。

示例:https://thinkster.io/tutorials/angular-2-ngmodule/creating-the-sharedmodule

相关问题