如何组织角度模块依赖项

时间:2015-09-29 16:07:29

标签: javascript angularjs module coding-style dependencies

我在创建角度应用程序时使用应用程序组件分段逻辑,也就是说我有以下文件夹结构:

app.module.js
app.config.js
components
---- core
-------- core.module.js
-------- etc...
---- component1
-------- component1.module.js
-------- etc...
---- component2
-------- component2.module.js
-------- etc...
---- etc...
shared
---- sharedComponent1
-------- etc...
---- etc...
assets

现在,我将所有组件分组到我的app.module.js文件中,而且几乎所有文件都在那里。我的component1.module.js将列出模块所需的依赖项,依此类推。现在,我意识到在我定义模块依赖关系的地方并不重要,我可以放置所有依赖模块,无论app.module.js文件中的组件如何,但是它根本不干净,也没有提供良好的模块化

话虽这么说,我不知道如何处理每个或几乎所有其他模块中使用的模块,例如用于本地化的模块。这里真正的问题不是整个应用程序使用该模块,而是需要配置通用模块,因此我考虑将该依赖关系和所需配置放在core.module.js和{{1文件,分别。

我已经阅读了很多关于角度最佳实践的内容,但我无法找到有关模块依赖性组织的内容,我想这是因为angular将所有模块放在一个“大盒子”中。

另一种方法是创建一个共享组件,专注于将特定依赖项或一组依赖项合并到angular中,然后让我的其他组件依赖于该组件,但我不确定这是否太多。

1 个答案:

答案 0 :(得分:1)

我按如下方式构建我的模块。我的结构和你的结构之间唯一真正的区别是所有核心/共享基本上都是一样的。我有一个组件文件夹,用于应用程序的每个单独模块。任何不属于单个组件的东西都属于核心。几乎每个组件都使用的东西也在核心中,因为它们是您应用程序的核心部分。

在我看来,只要你将应用程序分解为组件/ angular.modules,保持核心代码分离,组织清晰易懂,就完全可以接受

{{1}}