glup自动化构建工具
实现的功能包括 js压缩,css文件合并压缩并在html加版本号,压缩html文件
1.安装gulp
建议参考官网就行http://www.gulpjs.com.cn/docs/getting-started/
npm install gulp --save -dev [注:将gulp安装到项目]
npm init [注:根据提示一步一步创建package.json 最后yes保存]
添加 gulpfile.js文件 如步骤三
webstrom --》run--》选择运行default 这样就运行gulpfile.js文件了 [注:default,意思名为的default的task,如下]
gulp.task('default', [ 'copy', 'concat', 'replace','js']);
2.安装插件 主要用到以下插件
安装命令 npm install gulp-uglify gulp-concat gulp-minify-css gulp-rev gulp-rev-collector gulp-replace gulp-htmlmin --save -dev
3.gulpfile.js文件:
/*** Created by jh on 2017/4/6.*/
var gulp = require('gulp');
var minify = require('gulp-uglify'); //- 压缩js;
var concat = require('gulp-concat'); //- 多个文件合并为一个;
var minifyCss = require('gulp-minify-css'); //- 压缩CSS为一行;
var rev = require('gulp-rev'); //- 对文件名加MD5后缀
var revCollector = require('gulp-rev-collector'); //- 路径替换
var replace = require('gulp-replace'); //替换地址
var htmlmin = require('gulp-htmlmin'); //压缩html/*=====================copy其他静态资源文件==========================*/
gulp.task('copy', function() {return gulp.src(['images/**/*']).pipe(gulp.dest('dist/images'))
});
/*=====================压缩js==========================*/
gulp.task('js',function(){gulp.src('js/*.js') // 匹配.pipe(minify()).pipe(gulp.dest('dist/js')); // 写入 'dist/js'
});
//gulp.src('js/*.js', { base: 'client' })//会把源js也压缩
// .pipe(minify())
// .pipe(gulp.dest('build')); // 写入 'build/js/somedir/somefile.js'/*=====================合并、压缩css==========================*/
gulp.task('concat',function(){gulp.src(['css/style.css', 'css/style.mine.css']) //- 需要处理的css文件,放到一个字符串数组里.pipe(concat('style.rar.css')) //- 合并后的文件名.pipe(minifyCss()) //- 压缩处理成一行.pipe(rev()) //- 文件名加MD5后缀.pipe(gulp.dest('dist/css')) //- 输出文件本地.pipe(rev.manifest()) //- 生成一个rev-manifest.json.pipe(gulp.dest('config')); //- 将 rev-manifest.json 保存到 rev 目录内
});/*=====================打包、修改地址==========================*/
gulp.task('replace',function(){gulp.src(['config/*.json','*.html']).pipe(revCollector()) //- 执行文件内css名的替换.pipe(replace('css/','./css/')) //替换地址.pipe(htmlmin({collapseWhitespace: true})).pipe(gulp.dest('dist'))
});
//gulp.task('replace',function(){
// gulp.src(['config/*.json', '*.html']) //- 读取 rev-manifest.json 文件以及需要进行css名替换的文件
// .pipe(revCollector()) //- 执行文件内css名的替换
// .pipe(gulp.dest('dist')); //- 替换后的文件输出的目录
//});
//gulp.task('city', ['js', 'concat', 'replace', 'revCollector']);gulp.task('city', [ 'copy', 'concat', 'replace','js']);
转载于:https://www.cnblogs.com/juexin/p/6694927.html
glup自动化构建工具相关推荐
- python自动化构建工具_Python自动化构建工具scons使用入门笔记
这段时间用到了scons,这里总结下,也方便我以后查阅. 一.安装sconsLinux环境(以CentOS为例) 1.yum安装 yum install scons 2.源码安装 下载scons:ht ...
- (28)自动化构建工具Gulp
一.自动化构建工具介绍 Grunt:它是最早的自动化构建工具,它是基于临时文件进行构建的,构建速度慢. Gulp:它是基于内存进行构建的.是我们目前最流行最常用的自动化构建工具.构建速度快,上手更容易 ...
- 前端自动化构建工具之webpack入门——简单入门
写在前面 这篇博客也是参照别人的webpack入门,加上自己的一些操作,还有我在此过程中遇到的困难.如果是已经入门的或者这方面的高手,请绕行,也请勿吐槽. 正文开始 我们为什么要学习webpack 首 ...
- 前端自动化构建工具:用Gulp4.0搭建一个基本的前端开发环境
一个项目的完成一般需要经过三个步骤:初始化.开发和部署.在前端开发过程中,我们经常需要依靠一些自动化构建工具来优化前端工作流程,来帮助我们完成一系列繁琐的工作,例如浏览器热更新.ES6编译.代码压缩. ...
- Maven(自动化构建工具)
目录 Maven简介 1.1 软件开发中的阶段 1.2 Maven能做什么 1.3 什么是Maven 1.4 Maven的概念 1.5 Maven安装 Maven的核心概念 2.1约定的目录结构 2. ...
- 常用的前端自动化构建工具gulp/grunt/fis --简介
常用的前端自动化构建工具 之前我们自动化构建将入门级别使用的 NPM Scripts自动化构建工具对于相对复杂的项目构建会比较吃力,那么我们会了解 Gulp Grunt fIS 用法基本相同:都是通过 ...
- 前端自动化构建工具介绍
前端自动化构建工具有: Bower,Gulp,Grunt,node,yeoman... 自动化构建是作为前端工程化中重要的部分,承担着若干需要解决的环节.包括流程管理.版本管理.资源管理.组件化.脚手 ...
- 【LINUX修行之路】——工具篇gcc/g++的使用和自动化构建工具make/makefile
学习范围:✔️LINUX ✔️ gcc/g++✔️make/makefile 本文作者:蓝色学者 文章目录 一.前言 二.概念 什么是gcc/g++? 什么是make/makefile? 三.教程 3 ...
- 亚信UED前端流程自动化构建工具
亚信UED前端流程自动化构建工具 亚信UED前端流程自动化构建工具 aiflow 亚信 gulp 项目由亚信CMC UED团队创建,用于解决前端项目构建的流程管理,以及复杂度问题解决. 亚信UED前端 ...
最新文章
- Python中re的match、search、findall、finditer区别正则
- android 如何获得activity的view对象,Android的Activity 、 Window 、 View之间的关系
- [Unity] 战斗系统学习 6:构建 TPS 框架 2
- AutoCAD2004启动时出现fail to get CommcntrController的怎么办
- QTcpSocket使用QDataStream发送和保存图片文件
- Flink查询关联Hbase输出
- 一个程序的自我修养「GitHub 热点速览 v.22.19」
- JavaScript中的作用域及作用域链
- 24小时365天不间断服务
- 三极管控制继电器接法
- 多少卡路里,我应该吃是错误的
- 读书有益——》小朋友的诗(六)
- RankNet学习思路+损函感悟+\pi \xu 学xi+交叉熵损函详
- 计算机网络实验三——IP网络规划与路由设计
- 软件工程毕设项目推荐
- Modbus 简单认识(楼宇自动化系统背景下的详实总结
- 键盘上什么组合键表示热启动计算机,什么是电脑热启动?电脑怎么热启动
- 上海车展直击:“10万级科技头等舱” AION Y上市
- 计算机安全沙箱,安全沙箱
- 小鱼儿yr系统封装优化设置辅助工具V2.05.3