책
app.controller('PhoneListCtrl', ['$scope', '$http', function ($scope, $http)];
app에 주입을 작성하는 방법은 두 가지가 있습니다. Controller( 'PhoneListCtrl', function ($scope,$http)];
이 둘의 차이점을 모르겠습니다! ?
我想大声告诉你2017-05-15 16:58:43
먼저 코드 형식을 지정하세요.
디스플레이 삽입, 코드가 너무 길어 읽기 어렵고 코드 압축에 오류가 없습니다
으아악암시적 주입은 작성이 간단하지만 변수 이름이 짧아지고 종속성 주입이 해당 서비스 이름을 기반으로 하기 때문에 js를 압축할 때 오류가 발생합니다
으아악$inject 방법을 권장합니다. JohnPapa의 Angular 스타일 가이드
를 참조하세요. 으아악또한, 어떤 것을 사용하든 의존성 주입에 도움이 되는 플러그인이 있기 때문에 코드 압축에 대해 걱정할 필요가 없습니다. ng-annotate는 종속성 주입을 추가하는 데 도움이 됩니다.
예를 들어주세요
으아악伊谢尔伦2017-05-15 16:58:43
기사를 인용하여 직접 답변해 드립니다
원본 주소
의존성 주입은 AngularJS의 가장 좋은 패턴 중 하나입니다. 테스트를 더 쉽게 만들고 의존하는 개체를 더 명확하게 만듭니다. AngularJS는 주입과 관련하여 매우 유연합니다. 가장 간단한 방법은 종속성 이름을 모듈의 함수에 전달하는 것입니다.
여기서는 MainCtrl이 $scope와 $timeout에 의존한다는 것이 분명합니다.
프로덕션에 들어가 코드를 축소할 준비가 될 때까지. UglifyJS를 사용하면 위의 예는 다음과 같습니다.
이제 AngularJS는 MainCtrl이 무엇에 의존하는지 어떻게 알 수 있나요? AngularJS는 매우 간단한 솔루션을 제공합니다. 종속성을 문자열 배열로 전달하고 배열의 마지막 요소는 모든 종속성을 매개 변수로 사용하는 함수입니다.
으아악다음으로 AngularJS는 압축된 코드에서 종속성을 찾는 방법도 알 수 있습니다.
으아악高洛峰2017-05-15 16:58:43
전자는 표시 주입, 후자는 자동 주입입니다. 차이가 없습니다.
그러나 가장 권장되는 것은 주입 기능 주입입니다. 또한, 첫 번째 작성 방법에서는 디스플레이 삽입 후 순서가 함수 매개변수의 순서와 일치해야 한다는 점에 유의하시기 바랍니다.