ホームページ > 記事 > ウェブフロントエンド > 縮小化中の AngularJS 依存関係注入の問題を防ぐにはどうすればよいですか?
AngularJS 縮小化でのインジェクション名の保持
JavaScript コードを縮小すると、AngularJS の依存関係挿入システムに問題が発生する可能性があります。縮小化によって変数名と関数名が削除されると、AngularJS が依存関係をコントローラーに一致させるために依存する ID が壊れる可能性があります。
従来の方法
この問題を回避するには、従来のアプローチは、文字列の配列として依存関係を持つ匿名関数を使用してコントローラーを宣言することでした。これにより、縮小中に依存関係名が保持されます:
var MyController = ['$scope', '$http', function($scope, $http) { // ... }];
Inject Method
ただし、最新バージョンの AngularJS で推奨される方法は、依存関係の注入に inject 構文を使用することです。 。これにより、依存関係名をさらに明示的に定義でき、縮小化中にそのアイデンティティを正確に保持できます。
var MyController = function($scope, $http) { $http.get('https://api.github.com/repos/angular/angular.js/commits') .then(function(response) { $scope.commits = response.data }) }; MyController.$inject = ['$scope', '$http'];
推奨事項
依存関係の注入には常に inject メソッドを使用します。 AngularJS。これにより、縮小化中に依存関係名が確実に保持され、潜在的な注入エラーが防止されます。
代替手段
便宜上、ng-annotate npm パッケージをパッケージの一部として使用できます。ビルドプロセス。このツールは、コントローラーに $inject プロパティを自動的に追加し、アノテーション構文の冗長性を軽減します。
以上が縮小化中の AngularJS 依存関係注入の問題を防ぐにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。