У меня есть куча модулей Angular, объявленных в моем приложении. Сначала я начал объявлять их с помощью синтаксиса "цепочка":
angular.module('mymodule', [])
.controller('myctrl', ['dep1', function(dep1){ ... }])
.service('myservice', ['dep2', function(dep2){ ... }])
... // more here
Но я решил, что читать это было не так просто, поэтому я начал объявлять их с помощью модульной переменной следующим образом:
var mod = angular.module('mymodule', []);
mod.controller('myctrl', ['dep1', function(dep1){ ... }]);
mod.service('myservice', ['dep2', function(dep2){ ... }]);
...
Второй синтаксис кажется мне более читаемым, но моя единственная жалоба заключается в том, что этот синтаксис оставляет переменную mod
в глобальной области. Если у меня когда-нибудь будет другая переменная с именем mod
, она будет переопределена следующей следующей (и другими проблемами, связанными с глобальными переменными).
Итак, мой вопрос: это лучший способ? Или было бы лучше сделать что-то подобное?:
(function(){
var mod = angular.module('mymod', []);
mod.controller('myctrl', ['dep1', function(dep1){ ... }]);
mod.service('myservice', ['dep2', function(dep2){ ... }]);
...
})();
Или это даже достаточно важно, чтобы заботиться? Просто любопытно узнать, что такое "лучшие практики" для декларации модуля. Спасибо заранее.