简介:Grunt是基于Node.js的项目构建工具,对于需要重复执行的任务,例如压缩、编译、单元测试等,自动化工具可以减少你的工作量,使你的工作更轻松。

一:检测nodejs是否安装好,打开CMD控制器

出现以上情况,表示已经安装好了

二:Grunt安装

首先确保你已经正确安装了nodejs环境。
1.找到要使用Grunt的项目文件包

2.然后以全局方式安装Grunt:

npm install -g grunt-cli

3.package.json文件

(1种).npm init命令会创建

(2种).直接在项目包的根目录下建一个package.json文件

4.安装插件

(1中).单个插件的添加,如安装grunt插件

npm install grunt --save-dev

项目包结构

(2种),多个插件的添加

向已经存在的package.json 文件中添加插件的最简单方式是通过npm install <module> --save-dev命令。此命令不光安装了<module>,还会自动将其添加到devDependencies 配置段中,遵循tilde version range格式。

npm install  --save-dev

运行完后的项目包结构

5.直接在项目包的根目录下建一个Gruntfile.js文件

代码如下:

 module.exports = function(grunt) {

     // Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
//uglify列表
uglify: {//压缩js文件
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
},
js: {
src: ['js/test.js','js/test2.js'],
dest: 'js/all.min.js'
}
},
//cssmin列表
cssmin: {//压缩css文件
target: {
files: [{
expand: true,
cwd: 'css',
src: ['*.css', '!*.min.css'], //路径,压缩所有的css
dest: 'css',
ext: '.min.css'
}]
}
},
//concat列表
concat: {
//合并文件
options: {
//文件内容的分隔符
//separator: ';',
},
//js文件
js: {
//要合并的js文件
src: ['js/test.js','js/test2.js'],
//合并后的js文件
dest: 'js/all.js'
},
//css文件
css:{
src: ['css/index.css','css/my.css'],
dest: 'css/all.css'
}
},
//sprite列表
sprite:{ //雪碧图
all: {
src: 'spriteImages/*.jpg', //选择要压缩的文件
dest: 'images/page1-img.jpg', //图片压缩后,图片存放的位置
destCss: 'css/page1-img.css' //图片压缩后,css存放的位置
}
} }); // 加载包含 "uglify" 任务的插件。
grunt.loadNpmTasks('grunt-contrib-uglify');//用于js压缩。
grunt.loadNpmTasks('grunt-contrib-cssmin'); //用于css压缩。
grunt.loadNpmTasks('grunt-contrib-concat'); //合并任意文件
grunt.loadNpmTasks('grunt-spritesmith');//雪碧图 // 默认被执行的任务列表。
grunt.registerTask('default', ['uglify','cssmin','concat','sprite']); };

6.构建好后,运行grunt

运行后的效果图

Grunt自动化构建工具(网址:http://www.gruntjs.net/getting-started或者http://gruntjs.cn/getting-started)的更多相关文章

  1. grunt自动化构建工具

    一.什么是grunt? 是基于nodejs的项目构建工具,grunt和grunt插件是通过npm安装并管理的,npm是node.js的包管理器 二.为什么要用grunt? 自动化.对于反复重复的任务, ...

  2. NPM、nodeJS安装,grunt自动化构建工具学习总结

    一:安装 npm是随nodeJs安装包一起安装的包管理工具,能解决NodeJS代码部署上的很多问题: 常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从N ...

  3. 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍

    前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...

  4. JavaScript自动化构建工具grunt、gulp、webpack介绍

    前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...

  5. JavaScript自动化构建工具入门----grunt、gulp、webpack

    蛮荒时代的程序员: 做项目的时候,会有大量的js 大量的css   需要合并压缩,大量时间需要用到合并压缩 在前端开发中会出现很多重复性无意义的劳动  自动化时代的程序员: 希望一切都可以自动完成  ...

  6. 前端自动化构建工具gulp的使用总结

    前端自动化构建工具gulp的使用总结 博主最近偶的空闲,在此对gulp的使用做一个总结,让小伙伴知道如何合理的使用gulp以及gulp的使用技巧. 谈到gulp,有人可能就会想到另外一个构建工具gru ...

  7. 前端自动化构建工具——gulp

    gulp是基于流的前端自动化构建工具. 一.环境配置 gulp是基于nodejs的,所以没有 nodejs 环境的要先去安装好 然后给系统配上gulp环境 npm install -g gulp 再到 ...

  8. 前端自动化构建工具-yoman浅谈

    如今随着前端技术的飞速发展,前端项目也变得越来越复杂. 快速的搭建一个集成多种工具和框架的复杂前端项目也越来越成为一种需求. 当然如果你要自己从0开始完全自己diy,绝对可以,只不过需要耗费一些不少的 ...

  9. 前端自动化构建工具--Gulp&&Webpack

    前端构建工具的作用可以认为是对源项目文件或资源进行文件级处理,将文件或资源处理成需要的最佳输出结构和形式. 在处理过程中,我们可以对文件进行模块化引入.依赖分析.资源合并.压缩优化.文件嵌入.路径替换 ...

随机推荐

  1. php的spl_autoload_register函数的一点个人见解

    这是一篇对spl_autoload_register()函数的个人简单介绍,有需要的同学可以参考,主要是讨论spl_autoload_register()函数所注册的函数的参数的个人一点迷惑. 废话不 ...

  2. javascript实现有向无环图中任意两点最短路径的dijistra算法

    有向无环图 一个无环的有向图称做有向无环图(directed acycline praph).简称DAG 图.DAG 图是一类较有向树更一般的特殊有向图, dijistra算法 摘自 http://w ...

  3. Velocity(10)——指令的转义

    引用的转义使用"\",指令的转义也是使用"\".但是,指令的转义要比引用的转义复杂很多.例如: #if($foo) Go! #end $foo为true,输出G ...

  4. C#中把Datatable转换为Json的5个代码实例

    一. /// <summary> /// Datatable转换为Json /// </summary> /// <param name="table" ...

  5. IIS7的集成模式下如何让自定义的HttpModule不处理静态文件(.html .css .js .jpeg等)请求

    今天将开发好的ASP.NET站点部署到客户的服务器上后,发现了一个非常头疼的问题,那么就是IIS7的应用程序池是集成模式的话,ASP.NET项目中自定义的HttpModule会处理静态文件(.html ...

  6. s3c2440 移值u-boot-2016.03 第6篇 支持mtd yaffs 烧写

    1, 解决启动时的错误 Warning - bad CRC, using default environment 搜索发现 在 /tools/env/fw_env.c 中 /* 放在NAND FLAS ...

  7. app安装位置声明

    AndroidManifest.xml <manifest xmlns:android="http://schemas.android.com/apk/res/android" ...

  8. C#:绘图问题

    1.设置DPI Bitmap bitmap2 = new Bitmap((int)w, (int)h); bitmap2.SetResolution(, ); 2.设置Graphic(如:去锯齿等) ...

  9. [已解决] 点击 【Show in system explorer】Eclipse卡死,未响应

    新版的Eclipse自带了 [Show in system explorer] 功能很方便,有一天突然不好用了,点它Eclipse就卡死, 可能由以下原因导致的: (可能性最大)windows本身有问 ...

  10. 一个解决chrome浏览器下input标签当autocomplete的时候背景变黄色同时input背景图片消失方案

    最近在改一个bug即如标题所讲的一样,chrome浏览器下当input标签开启autocomplete的时候input的背景颜色变黄同时在input的背景图片也被覆盖了.为此百度了好久发现网上说的使用 ...