Rumah >hujung hadapan web >tutorial js >Bagaimanakah Suntikan Ketergantungan AngularJS Mengendalikan Pengurangan, dan Apakah Amalan Terbaik?

Bagaimanakah Suntikan Ketergantungan AngularJS Mengendalikan Pengurangan, dan Apakah Amalan Terbaik?

Linda Hamilton
Linda Hamiltonasal
2024-11-18 19:21:02527semak imbas

How Does AngularJS Dependency Injection Handle Minification, and What's the Best Practice?

Pertimbangan Pengurangan Suntikan Ketergantungan AngularJS

Mekanisme suntikan ketergantungan AngularJS memberikan cabaran apabila meminimumkan JavaScript. Sintaks suntikan kebergantungan lalai menggunakan pengisytiharan fungsi, yang boleh menimbulkan masalah semasa peminimakan.

Sintaks Suntikan Standard

Sebelum:

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

Semasa minifikasi , pembolehubah $scope dan $http mungkin dinamakan semula, memecahkan sistem suntikan kebergantungan.

Sintaks Gaya Inject

Untuk menyelesaikan isu ini, disyorkan untuk menggunakan sintaks gaya suntikan:

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
    })
}]

Dalam sintaks ini, tatasusunan kebergantungan dihantar sebagai rentetan, mengekalkan identiti kebergantungan semasa pengurangan.

Sentiasa Gunakan Gaya Inject ?

Ya, dinasihatkan untuk sentiasa menggunakan sintaks gaya suntikan. Ini memastikan bahawa sistem suntikan kebergantungan akan berfungsi dengan betul walaupun selepas pengurangan.

Pilihan Tambahan

Sebagai alternatif, anda boleh menggunakan pakej npm ng-anotasi semasa binaan anda proses untuk mengelakkan keperluan untuk sintaks gaya suntikan verbose. Ng-annotate menganalisis kod JavaScript anda dan menambahkan anotasi pergantungan pada pengisytiharan fungsi, menjadikannya selamat untuk pengurangan.

Atas ialah kandungan terperinci Bagaimanakah Suntikan Ketergantungan AngularJS Mengendalikan Pengurangan, dan Apakah Amalan Terbaik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn