我是Angular JS的新手,我正在经历一些有棱角的JS教程。以下是控制器方法之一。在第一种情况下,$ scope作为数组字符串的一部分包含在内,但在第二种情况下,$ scope仅在函数中注入,但两者都可以正常工作。有什么区别,必须采用哪种方法?
app.controller('myController', ['$scope', function ($scope) {
$scope.message = "Test Success";
}]);
app.controller('myController', function ($scope) {
$scope.message = "Test Success";
});
答案 0 :(得分:1)
第一种方法是推荐的做法,因此应用程序不会在(或如果)缩小时中断。
给这个读一下:https://scotch.io/tutorials/declaring-angularjs-modules-for-minification
和这个:https://docs.angularjs.org/tutorial/step_05(向下滚动到"关于缩小和#34的注释;)
答案 1 :(得分:1)
首选方法更可取,因为javascript函数参数的缩小也会缩小,依赖注入器无法正确识别服务。
答案 2 :(得分:1)
两种符号在角度上都是相同的。我个人更喜欢并推荐第一个。
即使上面的评论是正确的,缩小也会打破这个问题,仍有ngAnnotate专门为此构建:使用第二种表示法,它会在缩小时将其转换为数组符号