在哪里指定模块依赖?
Where to specify module dependencies?
我遵循按功能组织 angular 资产的标准做法;例如AngularJS Folder Structure and AngularJS Best Practices: Directory Structure.
我应该把我的模块/依赖声明放在哪个文件中?
我正在尝试解决以下问题:
- 出于维护原因,我希望能够按字母顺序对我的
<script>
引用进行排序,但我不能,因为这会破坏我的 Angular bootstrap(对于某些模块) .
- 我试过将它们保存在模块中按字母顺序排在首位的
*.js
文件中,但是随着我的应用程序的增长,我花了很多时间来移动我的依赖项声明。
- 我经常不得不四处寻找模块声明。
- 出于相关原因,我经常盯着 Angular 相对无信息的模块错误。
- 无论如何,将模块声明附加到特定控制器似乎暗示不存在的直接关联。
这是一个例子:
metric/
_module.js // Should I create this file?
detail-controller.js
detail.html
search-filter.js
selector-controller.js
selector-directive.js
selector.html
目前,对于这个模块,那行代码存在于我模块的一个控制器中,你猜是哪一个! ;)
作为一种我不太满意的可能解决方案,我是否应该将每个模块定义放在它自己的小型单行文件中?
angular.module('metric', ['lib', 'ngSanitize', 'ui.select', 'data']);
你是怎么做到的?我是否遗漏了其他一些聪明或明显的解决方案?
p.s。作为一个相关问题,如果您愿意,如何跟踪模块的哪些组件是依赖项的来源?
既然我已经使用它一段时间了,并且因为我已经开始用 gulp 预编译我的 javascript,单行模块声明文件似乎是对我来说最好的解决方案。
我将该文件命名为 <special-character>module.js
,以便它在视觉上和编译时排序到顶部。因为我的布局约定是一个文件夹 = 一个模块,所以这是示意性的。我的特殊角色是破折号,YMMV。我个人的 .js 文件名无论如何都不会出现在生产编译版本中。
最初我的项目中有一个单行文件让我很困扰,但现在我很感激。它使用 gulp 编译到我的应用程序 javascript 中,因此这不是性能问题。此外,还有一个明显的地方可以查找依赖项,在依赖项更改的修订控制日志中有清晰的踪迹,以及使用我自己的自定义工具从我的源记录依赖项的简单过程。
我会进一步分解。
metric/
metric.js
controllers/
detail-controller.js
selector-controller.js
directives/
selector-directive.js
filters/
search-filter.js
templates/
detail.html
selector.html
我遵循按功能组织 angular 资产的标准做法;例如AngularJS Folder Structure and AngularJS Best Practices: Directory Structure.
我应该把我的模块/依赖声明放在哪个文件中?
我正在尝试解决以下问题:
- 出于维护原因,我希望能够按字母顺序对我的
<script>
引用进行排序,但我不能,因为这会破坏我的 Angular bootstrap(对于某些模块) . - 我试过将它们保存在模块中按字母顺序排在首位的
*.js
文件中,但是随着我的应用程序的增长,我花了很多时间来移动我的依赖项声明。 - 我经常不得不四处寻找模块声明。
- 出于相关原因,我经常盯着 Angular 相对无信息的模块错误。
- 无论如何,将模块声明附加到特定控制器似乎暗示不存在的直接关联。
这是一个例子:
metric/
_module.js // Should I create this file?
detail-controller.js
detail.html
search-filter.js
selector-controller.js
selector-directive.js
selector.html
目前,对于这个模块,那行代码存在于我模块的一个控制器中,你猜是哪一个! ;)
作为一种我不太满意的可能解决方案,我是否应该将每个模块定义放在它自己的小型单行文件中?
angular.module('metric', ['lib', 'ngSanitize', 'ui.select', 'data']);
你是怎么做到的?我是否遗漏了其他一些聪明或明显的解决方案?
p.s。作为一个相关问题,如果您愿意,如何跟踪模块的哪些组件是依赖项的来源?
既然我已经使用它一段时间了,并且因为我已经开始用 gulp 预编译我的 javascript,单行模块声明文件似乎是对我来说最好的解决方案。
我将该文件命名为 <special-character>module.js
,以便它在视觉上和编译时排序到顶部。因为我的布局约定是一个文件夹 = 一个模块,所以这是示意性的。我的特殊角色是破折号,YMMV。我个人的 .js 文件名无论如何都不会出现在生产编译版本中。
最初我的项目中有一个单行文件让我很困扰,但现在我很感激。它使用 gulp 编译到我的应用程序 javascript 中,因此这不是性能问题。此外,还有一个明显的地方可以查找依赖项,在依赖项更改的修订控制日志中有清晰的踪迹,以及使用我自己的自定义工具从我的源记录依赖项的简单过程。
我会进一步分解。
metric/
metric.js
controllers/
detail-controller.js
selector-controller.js
directives/
selector-directive.js
filters/
search-filter.js
templates/
detail.html
selector.html