我如何为AngularJS编写自定义模块?

我需要为AngularJS编写一个自定义模块,但是我找不到关于这个主题的任何好的文档。 如何为AngularJS编写自定义模块,以便与其他人分享?

在这种情况下,你认为文档不能再帮你了,一个很好的学习方法就是看看其他已经构build好的模块,看看别人是怎么做的,他们是如何devise架构的,以及如何将它们集成到他们的应用。
看看别人做了什么,你至less应该有一个起点。

例如,看看任何angular度的UI模块 ,你会看到很多自定义模块。
一些定义了一个单一的指令 ,而另一些定义更多的东西 。

就像@nXqd所说的,创build模块的基本方法是:

// 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 

定义你的模块之后,向它添加组件非常容易(不必将模块存储在一个variables中):

 // add a new component to your module angular.module('myModuleName').controller('controllerName', function() { /* more stuff here */ }); 

集成部分相当简单:只需将其添加为您的应用程序模块的依赖关系(以下是 UI 的angular度)。

 angular.module('myApp', ['myModuleName']); 

如果你想寻找一个很好的例子,你应该看看写在angularJS中的当前模块。 学习阅读他们的源代码。 顺便说一句,这是我用来写angularJS模块的结构:

 var firstModule = angular.module('firstModule', []) firstModule.directive(); firstModule.controller(); // in your app.js, include the module 

这是基本的。

 var newMod = angular.module('newMod', []); newMod.controller('newCon', ['$scope', function ($scope) { alert("I am in newCon"); $scope.gr = "Hello"; }]); 

这里newMod是一个没有依赖关系[]的模块,并且有一个控制器,它有一个告警,告诉你在控制器中,一个variables的值为hello。