阅读网络上的各种教程,我遇到了两种不同的注册控制器的方法。
var app = angular.module('myApp', []);
//without explicit dependency injection
app.controller ("myCtrl1", function ($scope, $http) {
//some implementation
});
//with explicit dependency injection
app.controller ("myCtrl2", ["$scope", "$http", function ($scope, $http) {
//some implementation
}]);
两者似乎都可以在函数内部使用 $scope 和 $http 对象。
有人可以告诉我这两种方法之间的区别,以及一种方法是否优于另一种方法?如果 Angular 可以找出要注入的正确依赖项,那么显式声明它有什么好处?