0

我使用 Yeoman 搭建了一个简单的 Angular 应用程序,从那时起我就一直在使用它。

在文件app.js中,这是作为<script>inside列出的第一个文件index.html,我将主模块定义为:

angular.module('myMod', [])
    .config(...)

请注意空的依赖项数组。

现在,当我想给这个模块添加一个过滤器时,我创建一个myFilter.js文件(我在inside之后 加载);由组成:app.jsindex.htmlmyFilter.js

angular.module('myMod').filter(...)

请注意,该函数只有一个参数module()。如果我将空的依赖项数组作为参数传递给这个 module()函数,屏幕上实际上什么都不会出现。

我一直在玩一堆myMod用控制器扩展的其他文件,并且[]作为参数传递给angular.module()函数每次都会破坏我的应用程序。

在我看来,我只能angular.module()使用第二个参数调用一次,这可能有一些意义(我想列出多少次我的依赖项?一致性怎么样?)。是这样吗?

如果是,是否有一些标准的地方可以列出模块的依赖关系?

4

2 回答 2

4

angular.module("myModule",["dependencyA"]) 将创建一个新模块(如果模块已经存在,这将崩溃。) angular.module("myModule") 使用已知模块。

这也会影响您在 index.html 中加载脚本的方式

于 2013-08-20T20:11:21.630 回答
2

您应该只声​​明一次依赖项。此外,最好将所有过滤器保留为应用所依赖的单独模块,例如:

var myApp = angular.module('myApp', ['myApp.filters', 'myApp.directives', 'myApp.someOtherDependency']);

然后,您可以将过滤器定义为您的应用所依赖的模块:

angular.module('myApp.filters', []).filter(...)
于 2013-08-20T20:14:08.813 回答