理解Angularjs中的编码风格

Won*_*der 11 angularjs

我使用Angularjs遇到了不同的编码风格,它让我思考每种编码风格的优缺点.

例如.声明控制器:

风格#1

angular.module('mainCtrl', []);
function MainCrl($scope, $rootScope) {}
Run Code Online (Sandbox Code Playgroud)

风格#2

angular.module('mainCtrl',[])
.controller('MainCtrl', function($scope, $rootScope)) { ... });
Run Code Online (Sandbox Code Playgroud)

风格#3

angular.module('mainCtrl',[])
.controller('MainCtrl', ['$scope', '$rootScope', function(scope, rootScope)) { ... }]);
Run Code Online (Sandbox Code Playgroud)

因此样式#3有点像使用别名,当你打算写一个testscript(单元测试)时,使用别名会产生影响吗?我只是想在使用Angularjs Framework时有更好的理解和正确的方法.

请分享您对此的看法.谢谢!

Jus*_*nen 14

样式#1表示控制器在模块外部定义为全局,对于小型测试项目,但对于任何认真的工作,一切都应该使用#2或#3完成.#2和#3之间的区别是#3是可缩小的,因为$ scope和$ 2中的$ rootScope名称通常会被优化掉,这会导致应用程序失败.#3将这些存储为不会缩小的字符串.

如果您至少有可能缩小代码,请转到#3.使用#1而不是#2几乎没什么意义,所以我倾向于完全避免#1.