时间:2021-05-28
本文实例讲述了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程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
AngulagJs的页面使用Route跳转1.除了引用AngularJs.js外,还要引用路由JS,"~/Scripts/angularjs/angular-r
AngularJS动画AngularJS提供了动画效果,可以配合CSS使用。AngularJS使用动画需要引入angular-animate.min.js库。还
AngularJS作为一个非常实用的前端框架,我们知道在AngularJS中有自己的Model和Controler。angularJS中所有的请求都是通过js定
AngularJS的数据表格需要使用angualarjs、bootstrap、dirPagination.js效果图:1.html部分angularjs的数据表
前言AngularJS提供了动画效果,可以配合CSS使用。AngularJS使用动画需要引入angular-animate.min.js库。还需在应用中使用模型