我需要为AngularJS编写一个自定义模块,但是我找不到关于该主题的任何好的文档。如何为AngularJS编写一个可以与他人共享的自定义模块?
在这种情况下,您认为文档无法再为您提供帮助,一个很好的学习方法是查看其他已经构建的模块,看看其他人是如何做到的,他们如何设计架构以及如何将它们集成到其中。他们的应用。 在查看其他人的工作之后,您至少应该有一个起点。
例如,看看任何角度ui模块,您将看到许多自定义模块。 一些只定义一个指令,而另一些定义更多的东西。
就像@nXqd所说的那样,创建模块的基本方法是:
// 1. define the module and the other module dependencies (if any) angular.module('myModuleName', ['dependency1', 'dependency2']) // 2. set a constant .constant('MODULE_VERSION', '0.0.3') // 3. maybe set some defaults .value('defaults', { foo: 'bar' }) // 4. define a module component .factory('factoryName', function() {/* stuff here */}) // 5. define another module component .directive('directiveName', function() {/* stuff here */}) ;// and so on
定义模块后,很容易向其中添加组件(无需将模块存储在变量中):
// add a new component to your module angular.module('myModuleName').controller('controllerName', function() { /* more stuff here */ });
集成部分非常简单:只需将其添加为对您的应用程序模块的依赖项(这是 angular ui的工作方式)。
angular.module('myApp', ['myModuleName']);