下述给出了经常使用Grunt插件,并列举了部分插件演示样例:

插件名称 说明 Github地址
grunt-contrib-clean 清空文件和目录 https://github.com/gruntjs/grunt-contrib-clean
grunt-contrib-copy 拷贝文件和目录 https://github.com/gruntjs/grunt-contrib-copy
grunt-contrib-concat 连接、合并文件 https://github.com/gruntjs/grunt-contrib-concat
grunt-svgstore (svg)从指定目录合并svg https://github.com/FWeinb/grunt-svgstore
grunt-csscomb (CSS)格式化 https://github.com/csscomb/grunt-csscomb
grunt-contrib-less (CSS)将Less编译成css https://github.com/gruntjs/grunt-contrib-less
grunt-contrib-cssmin (CSS文件)压缩 https://github.com/gruntjs/grunt-contrib-cssmin
grunt-contrib-uglify (JS文件)压缩 https://github.com/gruntjs/grunt-contrib-uglify
grunt-contrib-htmlmin (HTML文件)压缩 https://github.com/gruntjs/grunt-contrib-htmlmin
grunt-filerev 文件内容hash(MD5) https://github.com/yeoman/grunt-filerev
grunt-filerev-replace 替换通过grunt-filerev的文件引用 https://github.com/solidusjs/grunt-filerev-replace
grunt-text-replace (文本文件)使用字符串、正则、函数替换内容 https://github.com/yoniholmes/grunt-text-replace
grunt-html-build (HTML文件)添加js、css、模板引用。移除调试代码 https://github.com/spatools/grunt-html-build
grunt-autoprefixer 加入前缀依赖Can I Use数据库 https://github.com/nDmitry/grunt-autoprefixer
grunt-parallel 并行执行命令和任务 https://github.com/iammerrick/grunt-parallel
grunt-contrib-watch 文件发生改变执行任务 https://github.com/gruntjs/grunt-contrib-watch
load-grunt-tasks 使用通配符载入全部任务 https://github.com/sindresorhus/load-grunt-tasks
time-grunt 显示执行任务的执行时间 https://github.com/sindresorhus/time-grunt

Gruntfile.js 骨架

'use strict';
module.exports = function(grunt){
// 配置信息
var config = {
path: __dirname,
src: __dirname + '/test/src',
dest: __dirname + '/test/dest'
}; grunt.initConfig({
config: config,
pkg: grunt.file.readJSON('package.json')
}); /* 载入全部插件 */
require('load-grunt-tasks')(grunt);
/* 统计各个任务执行时间 */
require('time-grunt')(grunt); };

演示样例:将1.html文件里的var requestAddress = "";替换为var requestAddress = "http://blog.csdn.net/ligang2585116";

// grunt-text-replace 使用字符串、正则、函数替换文本内容
// grunt.initConfig({})中添加Task
replace: {
requestAddress: {
src: ['<%= config.src %>/1.html'],
overwrite: true,
replacements: [{
from: 'var requestAddress = "";',
to: 'var requestAddress = "http://blog.csdn.net/ligang2585116";'
}]
}
}

演示样例:给1.js添加md5戳。并替换1.html1.js引用

// grunt-filerev 文件加MD5摘要
// grunt-filerev-replace 替换通过grunt-filerev的文件引用
// grunt.initConfig({})中添加Task
filerev: {
options: {
algorithm: 'md5',
length: 8
},
js: {
src: '<%= config.src %>/1.js'
}
},
filerev_replace: {
options: {
assets_root: '<%= config.src %>/',
views_root: '<%= config.src %>/'
},
js: {
src: '<%= config.src %>/1.html'
}
}
// 注冊任务
grunt.registerInitTask("js-md5", "add md5 for js", ['filerev:js', 'filerev_replace:js']);

Grunt经常使用插件及演示样例说明的更多相关文章

  1. AppCan移动应用开发平台新增9个超有用插件(内含演示样例代码)

    使用AppCan平台进行移动开发.你所须要具备的是Html5+CSS +JS前端语言基础.此外.Hybrid混合模式应用还需结合原生语言对功能模块进行封装,对于没有原生基础的开发人员,怎样实现App里 ...

  2. 图标插件--jqplot实现柱状图及饼图,表盘图演示样例

    柱状图 在jqPlot图表插件使用说明(一)中,我们已经能够通过jqPlot绘制出比較简单的线形图.通过查看源码.我们也能够看出,线形图是jqPlot默认的图表类型: /** * Class: Ser ...

  3. 构造Scala开发环境并创建ApiDemos演示样例项目

    从2011年開始写Android ApiDemos 以来.Android的版本号也更新了非常多,眼下的版本号已经是4.04. ApiDemos中的样例也添加了不少,有必要更新Android ApiDe ...

  4. [hadoop系列]Pig的安装和简单演示样例

    inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ).(来源:http://blog.csdn.net/inkfish) Pig是Yaho ...

  5. Broccoli &amp; Babel使用演示样例

    1 创建项目project文件夹:test 2 在test下运行 npm init 按提示填写package.json文件 3 安装broccoli命令行工具broccoli-cli npm inst ...

  6. 使用Dropzone上传图片及回显演示样例

    一.图片上传所涉及到的问题 1.HTML页面中引入这么一段代码 <div class="row"> <div class="col-md-12" ...

  7. Android网络(3):HttpClient作client,Tomcat Servlet作server的交互演示样例

    前面相继介绍了Android网络编程里的Socket传输图片.HttpURLConnection,今天看HttpClient. 第一部分:JavaEE版的Eclipse配置Tomcat [备注:开发后 ...

  8. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  9. java 覆盖hashCode()深入探讨 代码演示样例

    java 翻盖hashCode()深入探讨 代码演示样例 package org.rui.collection2.hashcode; /** * 覆盖hashcode * 设计HashCode时最重要 ...

随机推荐

  1. C# Log4net根据日志等级输出到不同文件

    原文地址: Log4Net.Config <?xml version="1.0" encoding="utf-8"?> <configurat ...

  2. shell脚本监控cpu/内存使用率 转

    该脚本检测cpu和内存的使用情况,只需要调整memorySetting.cpuSetting.userEmail要发邮件报警的email地址即可 如果没有配置发邮件参数的哥们,已配置了的,直接飞到代码 ...

  3. CTreeCtrl鼠标双击响应函数中怎么知道双击的是哪个子项?

    原帖链接: http://bbs.csdn.net/topics/310185501 楼主: CTreeCtrl鼠标双击响应函数中怎么知道双击的是哪个子项? 6楼: CPoint pt;GetCurs ...

  4. logrotate日志管理工具

    一.概述 logrotate是一个Linux系统默认安装了的日志文件管理工具,用来把旧文件轮转.压缩.删除,并且创建新的日志文件.我们可以根据日志文件的大小.天数等来转储,便于对日志文件管理. log ...

  5. systemd的程序自启动脚本编写

    以FreeSWITCH的自启动脚本为例. 一. 编写freeswitch.service文件 [Unit] Description=FreeSWITCH After=syslog.target net ...

  6. Java 8 Streams filter examples

    1. Streams filter() and collect() package com.mkyong.java8; import java.util.Arrays;import java.util ...

  7. MySQL 忘记root密码的两种处理方法

    [背景] 由于各个原因,我遇到过不只一次我服务的客户忘记了MySQL的root密码:如果是普通用户还好,我们可以用root用户去改它的密码,要命 的是把root给丢了! 对于MySQL来说如果你忘记了 ...

  8. SpringBoot自定义序列化的使用方式--WebMvcConfigurationSupport

    场景及需求: 项目接入了SpringBoot开发,现在需求是服务端接口返回的字段如果为空,那么自动转为空字符串. 例如: [     {         "id": 1,      ...

  9. activiti设置流程变量

    public static void mian(String args[]){ ProcessEngine processEngine  = ProcessEngine.getDefaultProce ...

  10. scrollReveal.js页面滚动动态效果

    scrollReveal.jshttp://www.dowebok.com/134.html简介 和 WOW.js 一样,scrollReveal.js 也是一款页面滚动显示动画的 JavaScrip ...