最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

AngularJS压缩JS技巧分析

来源:动视网 责编:小采 时间:2020-11-27 20:28:55
文档

AngularJS压缩JS技巧分析

AngularJS压缩JS技巧分析:本文实例讲述了AngularJS压缩JS的操作技巧。分享给大家供大家参考,具体如下:大多数web项目在发布时候都会对js代码进行压缩,目的是为了减少js文件的大小,节省一点流量。它的原理很简单,就是对参数及部分变量名和函数进行重命名。但是这种工作方式在Ang
推荐度:
导读AngularJS压缩JS技巧分析:本文实例讲述了AngularJS压缩JS的操作技巧。分享给大家供大家参考,具体如下:大多数web项目在发布时候都会对js代码进行压缩,目的是为了减少js文件的大小,节省一点流量。它的原理很简单,就是对参数及部分变量名和函数进行重命名。但是这种工作方式在Ang


本文实例讲述了AngularJS压缩JS的操作技巧。分享给大家供大家参考,具体如下:

大多数web项目在发布时候都会对js代码进行压缩,目的是为了减少js文件的大小,节省一点流量。

它的原理很简单,就是对参数及部分变量名和函数进行重命名。

但是这种工作方式在AngularJS的应用中会有例外。

由于AngularJS的依赖注入是根据参数名进行注入的,显然,对参数进行重命名会破坏这个机制。

如果不进行特殊处理,进行压缩(minify)之后,在执行时将会出现这样的错误

Unknow provider: aProvider<-a

对于这种错误的官方解释是:找不到依赖的服务

也就是说这种依赖注入会出现错误。

好在AngularJS内置了一种标准机制来处理这个问题.

最简单也最常见的方式就是用数组代替函数。如:

.controller('RegisterCtrl', ['$scope', '$interval', '$timeout', function ($scope, $interval, $timeout) {
 //do something
}]);

数组的最后一个元素始终是一个函数,而前面几个参数都是字符串,和这个函数中的参数一一对应。

另一种形式便是所谓的Annotation方式。如

var objCtrl = function($scope, $timeout, $interval){
 // do something
}
//给objCtrl函数增加一个$inject属性,它是一个数组,定义了需要被注入的对象
objCtrl.$inject = ['$scope', '$interval', '$timeout'];

这里的依赖注入形式不仅限于Controller,一切需要DI(依赖注入的directive、factory、services等)都可以采用这两种方式。

文档

AngularJS压缩JS技巧分析

AngularJS压缩JS技巧分析:本文实例讲述了AngularJS压缩JS的操作技巧。分享给大家供大家参考,具体如下:大多数web项目在发布时候都会对js代码进行压缩,目的是为了减少js文件的大小,节省一点流量。它的原理很简单,就是对参数及部分变量名和函数进行重命名。但是这种工作方式在Ang
推荐度:
标签: 技巧 js 压缩
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top