AngularJS压缩JS技巧分析_AngularJS

本文实例讲述了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
压缩
angularjs 压缩混淆、angularjs压缩、gulp angularjs 压缩、angularjs 代码压缩、angularjs 压缩工具,以便于您获取更多的相关知识。

时间: 2024-09-12 19:30:59

AngularJS压缩JS技巧分析_AngularJS的相关文章

AngularJS实用开发技巧(推荐)_AngularJS

一.开端 Angular JS 是一组用来开发Web页面的框架.模板以及数据绑定和丰富UI组件.它提供web应用的架构,无需进行手工DOM操作. AngularJS很小,只有60K,兼容主流浏览器,与jQuery 配合良好. 二.基础原则了解 ①angular的一些入门了解 一.基础知识 1.angular放弃了IE8 2.四大核心分别是mvc.模块化.指令系统.双向数据绑定 二.一些原则 1.不要复用controller,一个控制器一般只负责一小块视图. 2.不要在controller里面操作

AngularJS过滤器filter用法分析_AngularJS

本文实例讲述了AngularJS过滤器filter用法.分享给大家供大家参考,具体如下: 在开发中,经常会遇到这样的场景 如用户的性别分为"男"和"女",在数据库中保存的值为1和0,用户在查看自己的性别时后端返回的值自然是1或0,前端要转换为"男"或"女"再显示出来: 如我要换个羽毛球拍,某猫上羽毛球拍的品牌多达数十种,我想单独查看YONEX这个品牌的羽毛球拍: 买完羽毛球拍我还想买一桶羽毛球,点击按销量排序展示商品: 以上三

JavaScript代码格式化工具(JS代码分析必备)

推广等的控制广告显示的JS文件及生成的广告单元的源文件中的JavaScript代码都是经过JS压缩器以及混淆器处理后的.以达到减小这些文件的大小的目的. 当我们需要分析这些文件的时候就需要格式化javascript代码的工具,使之方便阅读. 在这里我给大家介绍的就是Javascript Code Improver 一个免费的工具.他很简单,只有格式化代码这一个功能,不过,足够用了.支持中英文界面切换. 下载:Javascript Code Improver JavaScript Code Imp

王继顺:独创六点降低网站跳出率技巧分析

使用百度统计的用户可能会发现有一项数据"跳出率",很多新手不明白这是指什么意思,跳出率指仅仅访问了单个页面的用户占全部访问用户的百分比,或者指从首页离开网站的用户占所有访问用户的百分比.网站的跳出率在某种程度上反应了一个网站的质量,尤其是网站的内容的质量和内部优化,当一个网站的内容能够吸引网站访客的好奇,通过逐层的点击来获取自己想要的知识,这就大大的降低了网站的跳出率,这也从另一个方面体现出一个网站的质量或者权重.那么如何降低网站的跳出率呢?王继顺SEO总结了六点技巧分析分享给大家.

PHP动态压缩js,css

正式发布产品时,我们希望将项目里的js,css合并压缩,以减少http请求.防止轻易查看源代码. 使用 只需要在头部引入一下代码即可: <meta charset="utf-8"/> <title>demo</title> <?php //定义需要压缩的文件 $css = array( CSS_PATH . 'base.css', CSS_PATH . 'style.css', CSS_PATH . 'my.css' ); $js = arra

基于angularjs实现图片放大镜效果_AngularJS

前言 一开始打算用原生的angularjs写,但是发现用原生angularjs,无论如何都不能获取里面图片的宽度和高度,因为angularjs内置的jquery方法里没有winth()  .height()方法. 最好我还是引入了jquery,在同一scope上绑定了宽度高度.下面上源码,顺便我会把里面的一些注意的点说一下. 效果图 首先说明下 1.首先使用了两个同级指令,并在两个同级指令间进行通信,同级指令间通信,非常简单,就是不要让同级的指令生成独立的scope,并且在同一个作用域下就完成了

Ant+YUICompressor 合并压缩JS和CSS代码实例

在实际项目中,推荐的是一个html对应一个JS文件和一个CSS文件.这样做可以减少HTTP请求,众所周知,一个HTTP请求的延迟远比下载一个大点的文件大得多. 所以从程序员来看:我要分文件,分模块写.不然代码太混乱了.(多文件) 客户(网站的使用者)来看:我要良好的用户体验,越快越好.(少文件,文件一多HTTP请求会很多) 这就产生了冲突,不过有需求就有市场,我们聪明的前端攻城狮也有自己的方法解决.--链接文件与压缩大法,也就是标题"使用Ant和YUICompressor链接合并压缩你的JS和C

使用ANT与YUI压缩js的实现方法_java

由于项目使用的js很多,为了提高系统效率,将js做压缩处理.成功的对多个js进行压缩,必须经历下面两步.1.合并多个js成为一个js.2.将和并过后的js进行压缩处理.使用的ant配置主要有: 复制代码 代码如下: <property  name="root" value="WebRoot"></property> <property  name="js" value="${root}/js"&g

Yii2中使用asset压缩js,css文件的方法_php实例

官网文档 http://www.yiiframework.com/doc-2.0/guide-structure-assets.html yii目录下运行 asset/template assets.php 生成assets.php,这是一个配置模板,并修改如下 <?php /** * Configuration file for the "yii asset" console command. */ // In the console environment, some pat