在 AngularJS 缩小中保留注入名称
缩小 JavaScript 代码可能会在 AngularJS 的依赖注入系统中引入问题。当缩小删除变量和函数名称时,它可能会破坏 AngularJS 所依赖的身份来匹配与其控制器的依赖关系。
传统方法
为了避免此问题,传统方法是使用匿名函数来声明控制器,并将依赖项作为字符串数组。这会在缩小期间保留依赖项名称:
var MyController = ['$scope', '$http', function($scope, $http) { // ... }];
注入方法
但是,现代版本的 AngularJS 中的首选方法是使用注入语法进行依赖项注入。这允许更明确地定义依赖项名称,并在缩小期间准确地保留其身份:
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中文网其他相关文章!