Javascript模块化开发4——Grunt常用模块
一、copy
用于复制文件与目录。
grunt-contrib-copy
二、eslint
检测代码的合理性。
grunt-eslint
常见参数:
1.quiet
是否只显示errors。默认值false。
三、uglify
用于压缩文件。
grunt-contrib-uglify
常见参数:
1.mangle
混淆配置,默认值{}。
若为false则不混淆变量名
{
reserved:[保留的变量名]
}
2.compress
压缩配置,默认值{}。
若为false则不进行压缩
3.beautify
是否保持格式化的代码,默认值false
4.sourceMap
是否生成sourceMap文件,默认值false
5.sourceMapName
生成的sourceMap文件名称
6.wrap
添加wrapper,
比如,若值为"myobj"则在代码周围包裹上
function(e) {
//***
})(typeof myobj == "undefined" ? myobj = {} : myobj);
7.banner
添加到结果文件头部。
8.footer
添加到结果文件尾部。
9.ie8
是否兼容ie6-8
10.output.comments
注释处理配置:
- false去除所有注释
- 'all' 保留所有注释
- 'some'保留标注了@preserve @license @cc_on的注释
- Function自定义函数返回true or false来判断当前注释是否保留
- RegExp根据正则表达式来判断当前注释是否保留。
四、jsonlint
检测json文件的合理性。
grunt-jsonlint
常见参数:
1.allowSingleQuotedStrings
是否允许单引号。
2.ignoreComments
是否忽略注释
3.format
检测合格后是否用JSON.stringify进行格式化
4.indent
值可为空格数目或'\t'
5.sortKeys
是否对JSON里的属性进行排序
五、newer
使得任务只对新的文件运行任务。 newer 任务不要求特殊的配置,你只需要在任务前加上newer: 。
grunt-newer
六、karma
测试模块
grunt-karma
七、compare_size
进行文件大小比较
grunt-compare-size
八、watch
watch是一个特殊的任务,它可以在目标文件保存时自动触发一系列任务的运行。在命令行工具中运行grunt watch命令,此时,你修改并保存文件就会触发watch相关参数中定义的命令。
grunt-contrib-watch
常见参数:
1.files
监控哪些文件
2.tasks
触发后执行哪些任务
Javascript模块化开发4——Grunt常用模块的更多相关文章
- Javascript模块化开发3——Grunt之预处理
一.grunt预处理简述 grunt的注册任务函数本身会对传入的参数和配置对象里的相关属性进行一定的预处理,方便任务函数进行操作. grunt的registerTask方法和registerMulti ...
- Javascript 模块化开发上线解决方案
最近又换部门了,好频繁地说...于是把这段时间搞的小工具们简单整理了一下,作了一个小的总结.这次用一个简单业务demo来向大家介绍一下Javascript模块化开发的方式和自动化合并压缩的一些自己的处 ...
- Javascript模块化开发,使用模块化脚本加载工具RequireJS,提高你代码的速度和质量。
随着前端JavaScript代码越来越重,如何组织JavaScript代码变得非常重要,好的组织方式,可以让别人和自己很好的理解代码,也便于维护和测试.模块化是一种非常好的代码组织方式,本文试着对Ja ...
- JavaScript模块化开发的那些事
模块化开发在编程开发中是一个非常重要的概念,一个优秀的模块化项目的后期维护成本可以大大降低.本文主要介绍了JavaScript模块化开发的那些事,文中通过一个小故事比较直观地阐述了模块化开发的过程. ...
- JavaScript模块化开发整理
在网上已经有很多关于模块化开发的文章了,这里还是按照自己的理解来整理一下. 随着项目文件的越来越大和需求的越来越贴近现实(我发现现在客户不如:一个领导说我要审批你们报上来的资料,系统发布以后用的还不错 ...
- Javascript模块化开发-轻巧自制
Javascript模块化开发-轻巧自制 一.前言现在javascript的流行,前端的代码越来越复杂,所以我们需要软件工程的思想来开发前端.模块化是必不可少的,这样不仅能够提高代码的可维护性.可扩展 ...
- JavaScript模块化开发&&模块规范
在做项目的过程中通常会有一些可复用的通用性功能,之前的做法是把这个功能抽取出来独立为一个函数统一放到commonFunctions.js里面(捂脸),实现类似于snippets的代码片段收集. fun ...
- Javascript模块化开发2——Gruntfile.js详解
一.grunt模块简介 grunt插件,是一种npm环境下的自动化工具.对于需要反复重复的任务,例如压缩.编译.单元测试.linting等,自动化工具可以减轻你的劳动,简化你的工作.grunt模块根据 ...
- javascript 模块化开发(一)
什么是模块化 将一组模块(及其依赖项)以正确的顺序拼接到一个文件(或一组文件)中的过程. 传统的模块化做法. 模块是实现特定功能的一组属性和方法的封装. 将模块写成一个对象,所有的模块成员都放到这个对 ...
随机推荐
- Centos8 配置静态IP
安装centos 8之后,重启启动网络时,会出现以下报错 报错信息如下: Failed to start network.service: Unit network.service not found ...
- CSS新特性之3D转换
1. 三维坐标系 x轴:水平向右(右边是正,左边是负) y轴:垂直向下(向下是正,向上是负) z轴:垂直屏幕(向外是正,向里是负) 2. 3D转换 3D转换中最常用的是3D位移和3D旋转.主要知识点如 ...
- BZOJ3144/LG3227 「HNOI2013」切糕 最小割离散变量模型
问题描述 BZOJ3144 LG3227 还想粘下样例 输入: 2 2 2 1 6 1 6 1 2 6 2 6 输出: 6 题解 关于离散变量模型,我不想再抄一遍,所以: 对于样例,可以建立出这样的图 ...
- [CodeForces-1225A] Forgetting Things 【构造】
[CodeForces-1225A] Forgetting Things [构造] 标签: 题解 codeforces题解 构造 题目描述 Time limit 2000 ms Memory limi ...
- c++.net学习笔记
Notes for c++ learning 程序根据什么特征来区分调用哪个重载函数? 只能靠参数而不能靠返回值类型的不同来区分重载函数. 编译器根据参数为每个重载函数产生不同的内部标识符 在Visu ...
- Java描述设计模式(06):建造者模式
本文源码:GitHub·点这里 || GitEE·点这里 一.生活场景 基于建造者模式,描述软件开发的流程. 1.代码实现 /** * 基于建造者模式描述软件开发 */ public class C0 ...
- C#函数(构造函数)的重载
using System; namespace test { class Program { static void Main(string[] args) { Cat cat = new Cat() ...
- Windowns系统下搭建python环境
本文介绍下在windows系统下安装python和python环境搭建. 安装PYTHON 首先,我们去python的官方网站下载python安装包.官网地址:https://www.python.o ...
- ASP.NET Core部署系列一:发布到IIS上
前言: 当构建一个ASP.NET Core应用程序并且计划将其运行在IIS中时,你会发现Core应用程序和之前版本的ASP.NET程序在IIS中的运行方式是完全不一样的.与ASP.NET时代不同,AS ...
- js闭包理解案例-解决for循环为元素注册事件的问题
转发自http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html 一.变量的作用域 要理解闭包,首 ...