1. ホーム
  2. javascript

[解決済み] Angularjsのminifyのベストプラクティス

2023-01-05 19:44:56

質問

今読んでいる本 http://www.alexrothenberg.com/2013/02/11/the-magic-behind-angularjs-dependency-injection.html を読んでいて angularjsの依存性注入は、javascriptをminifyすると問題があることがわかりました。 ということで、代わりに

var MyController = function($scope, $http) {
    $http.get('https://api.github.com/repos/angular/angular.js/commits')
      .then(function(response) {
        $scope.commits = response.data
      })
  }

を使用する必要があります。

var MyController = ['$scope', '$http', function($scope, $http) {
  $http.get('https://api.github.com/repos/angular/angular.js/commits')
    .then(function(response) {
      $scope.commits = response.data
    })
}]

2番目のスニペットは古いバージョンのangularjsのためのものだと思っていたのですが.

常にインジェクトの方法(2番目のもの)を使用する必要がありますか?

どのように解決するのですか?

はい、そうです。 というのは、常にです。このようにすると、miniferが$scopeを変数aに、$httpを変数bに変換したとしても、それらの変数が のアイデンティティは保たれます。 を文字列で保持します。

参照 このページ までスクロールしてください。 最小化に関するメモ .

UPDATE

別の方法として ng-annotate npm パッケージをビルドプロセスで使用すると、この冗長性を回避できます。