使用Gulp实现前端构建自动化
使用Gulp实现前端构建自动化
安装
一.安装NodeJs
Gulp的安装依赖于NodeJs的npm安装管理器
安装包下载地址
关于npm命令:
1. npm install <name>
会把插件安装到node_modules目录中
2. 参数 --save
会在package.json的dependencies属性下添加该插件
3. 参数 --save-dev:
会在package.json的devDependencies属性下添加添加该插件
4. 参数 -g
全局安装插件
4. npm install
会安装package.json下dependencies和 devDependencies声明的插件
5. 使用原则:
运行时需要用到的包使用--save,否则使用--save-dev。
二.安装Gulp
- 执行
npm init初始化package.json ————便于共同开发时安装插件 - 执行
npm install -save gulp
三.Gulp的使用
1.在项目根目录下创建一个gulpfile.js文件
2.在gulpfile.js文件下引入gulp
var gulp = require('gulp');
3.创建默认任务
//执行 gulp 会默认执行该任务
gulp.task('default', function() {
});
4.文件移动指令
//目标文件
gulp.task('movecss', function() {
gulp.src('*.css')//指定源文件
.pipe(
gulp.dest('minicss')//输出到指定的目录 若该目录不存在会自动创建
);
});
5.监听文件变化执行一些操作
//目标文件
gulp.task('watchjs', function() {
gulp.watch('main.js', function(event) {
console.log('File ' + event.path + ' was ' + event.type + ', running tasks...');
});
});
6.在一个task下引用其他task
//多个task
gulp.task('tasks', ['movecss','watchjs'], function() {
console.log('last task');
});
//会按顺序执行
gulp.task('default', ['movecss', 'watchjs']);
四.常用插件
1.压缩CSS---gulp-minify-css
安装:
npm install gulp-minify-css --save-dev
用法:
//引入gulp-minify-css
var cssminify = require('gulp-minify-css');
//压缩css 并移动到指定的文件夹
gulp.task('cssmin', function () {
gulp.src('*.css')
.pipe(cssminify())
.pipe(gulp.dest('minicss'));
});
2.压缩js---gulp-minify
安装:
npm install --save-dev gulp-minify
用法:
//压缩js
gulp.task('compress', function () {
gulp.src('*.js')
.pipe(minify({
ext:{
src:'-debug.js',//源文件的扩展名
min:'-min.js' //压缩过的文件的扩展名
},
exclude: ['folder'], //排除的目录
ignoreFiles: ['gulpfile.js'] //不压缩的文件
}))
.pipe(gulp.dest('minijs'))
});
3.gulp-clean
安装:
npm install --save-dev gulp-clean
用法:
//清除文件
gulp.task('clean-mini-js', function () {
return gulp.src('minijs', {read: false})
.pipe(clean());
});
其他常用插件
- gulp-manifest
- run-sequence
- gulp-exec
- gulp-css-urls
- gulp-minify-css
- gulp-htmlmin
- gulp-imagemin
- gulp-uglify
- gulp-concat
- gulp-rename
Github--本文代码
参考链接:
使用Gulp实现前端构建自动化的更多相关文章
- Gulp常用前端流程自动化配置
前言 近期的项目全部由Grunt + LESS 转向改用Gulp + SASS 进行前端开发,也就奔着Gulp那比较好用的自定义函数而来的. 一.package.json文件配置如下: { " ...
- node和gulp实现前端工程自动化(附:gulp常用插件)
/** * 1. LESS编译 压缩 合并 * 2. JS合并 压缩 混淆 * 3. img复制 * 4. html压缩 */ // 在gulpfile中先载入gulp包,因为这个包提供了一些APIv ...
- 前端构建大法 Gulp 系列 (四):gulp实战
前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp专家 前 ...
- 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp专家
系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...
- 前端构建大法 Gulp 系列 (二):为什么选择gulp
系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...
- 前端构建大法 Gulp 系列 (一):为什么需要前端构建
系列目录 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gul ...
- 前端构建大法 Gulp 系列
参考: 前端构建大法 Gulp 系列 (一):为什么需要前端构建 前端构建大法 Gulp 系列 (二):为什么选择gulp 前端构建大法 Gulp 系列 (三):gulp的4个API 让你成为gulp ...
- 构建一个基本的前端自动化开发环境 —— 基于 Gulp 的前端集成解决方案(四)
通过前面几节的准备工作,对于 npm / node / gulp 应该已经有了基本的认识,本节主要介绍如何构建一个基本的前端自动化开发环境. 下面将逐步构建一个可以自动编译 sass 文件.压缩 ja ...
- 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍
前端开发自动化工作流工具,JavaScript自动化构建工具grunt.gulp.webpack介绍 前端自动化,这样的一个名词听起来非常的有吸引力,向往力.当今时代,前端工程师需要维护的代码变得及为 ...
随机推荐
- yaf学习之——yaf安装
yaf的github源码地址 https://github.com/laruence/yaf 第一步: 下载dll扩展: http://pecl.php.net/package/yaf/2.3.5/w ...
- 【踩坑】360安全浏览器“极速模式”和“兼容模式”,套路还是bug?
分享踩坑点: 项目中需要兼容360安全浏览器,大家当然都希望用极速模式打开网站,但是发现总是被兼容模式打开 网址类似 aa.xx.dd.com 网上找了很多地方,有以下两种方法 1.<meta ...
- 写给Android App开发人员看的Android底层知识(2)
(五)AMS 如果站在四大组件的角度来看,AMS就是Binder中的Server. AMS全称是ActivityManagerService,看字面意思是管理Activity的,但其实四大组件都归它管 ...
- struts2.5能不能再恶心点
Caused by: java.lang.IllegalArgumentException: unknown reserved key '_typeConverter' at ognl.OgnlCon ...
- Linux C 程序的开发环境
1.开发环境的构成 编辑器 vim,vi 编译器 gcc 调试器 gdb 函数库glibc 系统头文件glibc_header 2.gcc编译器 功能强大.性能优越的多平台编译器,gcc可以将c.c+ ...
- js事件中的event对象
addEvent(oDiv,"click",function(event){ console.log(event.bubbles+"事件是否冒泡"); cons ...
- 主机设置ss代理,虚拟机共享代理
代理的原理: 关于代理的具体的书面定义你百度谷歌可以知道.这里,我想简单通过一个例子,说明代理的原理: 假如,你在北京,但你女朋友在广州,你有东西要给你的女朋友,但是正好你这几天公司有事,所以你不能去 ...
- Linux如何安装VMware Tools
第一步:安装VMware Tools 桌面上会出现一个光盘,并且会弹出一个框框,里面是VMware Tools的安装包,将其拖到桌面上 就像下面这样 进入终端,将文件拷贝到/tmp目录下面,并解压(也 ...
- 我来说说XML文件中的xmlns、xmlns:xsi和xsi:schemaLocation的具体含义
文章摘自:https://yq.aliyun.com/articles/40353 http://www.cnblogs.com/zhao1949/p/5652167. ...
- 发布自己第一个npm 组件包(基于Vue的文字跑马灯组件)
一.前言 总结下最近工作上在移动端实现的一个跑马灯效果,最终效果如下: 印象中好像HTML标签的'marquee'的直接可以实现这个效果,不过 HTML标准中已经废弃了'marquee'标签 既然HT ...