Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如何忽略导入到父要素模块(定义其自身路径)中的要素模块的路径_Angular_Angular Routing - Fatal编程技术网

Angular 如何忽略导入到父要素模块(定义其自身路径)中的要素模块的路径

Angular 如何忽略导入到父要素模块(定义其自身路径)中的要素模块的路径,angular,angular-routing,Angular,Angular Routing,给定两个功能模块(A、B),每个功能模块都有自己的路由模块,如何将模块B导入到A中,而不使来自B(/B)的路由干扰A(/A)?实际上,来自B的路由推到模块A的routeConfig的前面,导致(/B)加载指定的组件 用例是模块B还导出a中我需要的组件(这是模块B路由指定的相同组件) 我认为简单的解决方案是为B创建两个模块,Bc导出组件,Br导入Bc并拥有自己的路由模块。在这种情况下,我会将Bc导入到一个数据库中,这样就可以避免问题 是否有其他方法来处理这种情况,或者仅仅是因为我当前的体系结构不正

给定两个功能模块(A、B),每个功能模块都有自己的路由模块,如何将模块B导入到A中,而不使来自B(/B)的路由干扰A(/A)?实际上,来自B的路由推到模块A的routeConfig的前面,导致(/B)加载指定的组件

用例是模块B还导出a中我需要的组件(这是模块B路由指定的相同组件)

我认为简单的解决方案是为B创建两个模块,Bc导出组件,Br导入Bc并拥有自己的路由模块。在这种情况下,我会将Bc导入到一个数据库中,这样就可以避免问题


是否有其他方法来处理这种情况,或者仅仅是因为我当前的体系结构不正确?

让我们试着从体系结构的角度来理解这一点

如果你有两个特性模块,那么为了避免任何路由冲突,也要使你的应用程序加载得更快,你应该考虑使这两个模块都懒惰加载。 如果您有一个在两个模块之间共享的组件,那么您最好将其放置在共享模块中,然后在两个模块(a和B)中导入共享模块

如果您有一些一次性组件、管道、指令等,那么您应该将它们放在核心模块中,只需在AppModule中导入一次即可

中,有一些与此类似的非常重要的指导原则,我建议您进行一次


希望这能帮助您选择如何处理
共享
组件。

您的回答似乎重申了我的应急计划。我想这证实了架构需要进行重构,以支持组件B的两个用例。通过向下投票发现驱动器完全没有帮助,也令人恼火。我怀疑否决票仅仅是因为在问题中没有看到代码,因此它被认为不是一个质量问题。荒唐的当然,由于没有评论,我只能猜测。