Angular 中的縮小

什麼是縮小?

這是從原始碼中刪除所有不必要的字元而不更改其功能的過程。

普通語法

如果我們使用普通的角度語法來編寫控制器,那麼在微調我們的檔案之後它將破壞我們的功能。

控制器(縮小前):

var app = angular.module('mainApp', []);    
app.controller('FirstController', function($scope) {
    $scope.name= 'Hello World !';  
});

使用縮小工具後,將如下所示縮小。

var app=angular.module("mainApp",[]);app.controller("FirstController",function(e){e.name= 'Hello World !'})

這裡,minification 從程式碼中刪除了不必要的空格和$ scope 變數。因此,當我們使用這個縮小的程式碼時,它不會在檢視上列印任何內容。因為$ scope 是控制器和檢視之間的關鍵部分,現在它被小的’e’變數取代。因此,當你執行應用程式時,它將給出未知提供程式’e’依賴性錯誤。

有兩種方法可以使用服務名稱資訊來註釋你的程式碼,這些資訊是安全的最小化:

內聯註釋語法

var app = angular.module('mainApp', []);    
app.controller('FirstController', ['$scope', function($scope) {
    $scope.message = 'Hello World !'; 
}]);

$ inject 屬性註釋語法

FirstController.$inject = ['$scope'];
var FirstController = function($scope) {
    $scope.message = 'Hello World !'; 
}

var app = angular.module('mainApp', []);
app.controller('FirstController', FirstController);

縮小後,此程式碼將是

var app=angular.module("mainApp",[]);app.controller("FirstController",["$scope",function(a){a.message="Hello World !"}]);

這裡,angular 將變數’a’視為$ scope,它將輸出顯示為’Hello World!’。