AngularJS模块困境 - 单个或多个

时间:2014-07-24 09:21:25

标签: angularjs unit-testing angularjs-module

对于中型应用程序我正在开发,并且已经看过其他文章中的Best Practices video by Misko我推断出我不需要更多比一个模块

首先提出问题,要遵循的论点。在视频中,Misko隐约暗示模块可能更适合单元测试,但没有详细说明。

  • 单一模块方法实际上会阻碍任何形式的测试:单位,E2E等?
  • 我错过了一些明显的错误吗?

对于应用程序,我现在可以推断的唯一真正好处是组件重用,而在未来的版本中还有更多预期:

  • 延迟加载
  • Visual Namespacing

这些未来的可以安全地被认为不是现在主要关注的问题,因为它们可以在时机成熟时用最少的mod来轻松解决。

产品及其组件仅供内部使用,我甚至不会在大多数文章指出的公共领域范围内使用组件可重用性。 我正在正确地组织它,并且只有正确的依赖平衡,但我没有看到为什么每个或大多数都应该拥有自己的模块

我在这里发现的问题或者在理论上过于模糊或简单地讨论了模块化。我的问题更多地针对的是当我们不进行模块化时会发生什么,正如视频所暗示的那样。

1 个答案:

答案 0 :(得分:3)

多模块很好,但你开始创建模块和更多模块,你的依赖列表开始成长,你必须在很多地方加载模块,很快就会变得毛茸茸(根据我的经验)。 / p>

在一天结束时,Angular会加载所有这些,所以Angular本身并不在乎。

单个模块也是个好主意。

进行测试,您不必担心。在测试中,您需要加载包含您正在测试的组件的模块,因此加载appmyawesomedirective无关紧要。

最后,由于这个世界不是黑色或白色,你可以把所有东西放在同一个模块下,但是如果你看到自己写了一个指令(或其他东西),你就会清楚地看到你想在其他地方使用,你可以为它安装一个新模块。