gulp使用指南
2017-09-05 10:42
330 查看
1.官方网站 http://www.gulpjs.com.cn/
2.gulp安装 http://www.ydcss.com/archives/18
3.目录结构
4.index.html
5.index.js
6.config.js
7.gulpfile.js
8.packgae.json
9.压缩后的index.js
10.遍历所有html,替换文件命名后的效果
11.参考链接
变态的静态资源缓存与更新https://my.oschina.net/jathon/blog/404968
项目部署缓存解决方案http://www.cnblogs.com/1wen/p/5421212.html
2.gulp安装 http://www.ydcss.com/archives/18
3.目录结构
4.index.html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.js"></script> </head> <body> <input type="button" id="button1" value="Click"> <script src="js/index.js" ></script> </body> </html>
5.index.js
$(function () { $('#button1').click(function () { alert('button1'); }); });
6.config.js
var src = '../src'; var dest = '../dist'; var config = { js: { src: src + "/js/**/*", dest: dest + "/js", rev: dest + "/rev/js" }, rev:{ revJson: dest + "/rev/**/*.json", src: src + "/*.html", dest: dest } } module.exports = config;
7.gulpfile.js
var gulp = require('gulp'); //使用gulp-uglify压缩javascript文件,减小文件大小。http://www.ydcss.com/archives/54 var uglify = require('gulp-uglify'); //根据静态资源内容,生成md5签名,打包出来的文件名会加上md5签名,同时生成一个json用来保存文件名路径对应关系。http://www.cnblogs.com/1wen/p/5421212.html var rev = require('gulp-rev'); //这个插件就是从manifests中获取静态资源版本数据, 该数据由不同的流产生, 并且替换html中的链接。 http://blog.csdn.net/hayleyxia/article/details/46969711 var revCollector = require('gulp-rev-collector'); //优雅的异步处理任务。https://www.npmjs.com/package/gulp-sync var gulpsync = require('gulp-sync')(gulp); var config = require('./config').js; var configRev = require('./config').rev; gulp.task('js', function() { return gulp.src(config.src) .pipe(uglify({mangle: false, compress: {properties: false}, output: {quote_keys: true}})) .pipe(rev()) .pipe(gulp.dest(config.dest)) .pipe(rev.manifest()) .pipe(gulp.dest(config.rev)); }); gulp.task('rev', function () { return gulp.src([configRev.revJson, configRev.src]) .pipe(revCollector({replaceReved: true,})) .pipe(gulp.dest(configRev.dest) ); }); gulp.task('default',gulpsync.sync(['js', 'rev']),function () { });
8.packgae.json
{ "name": "demo", "description": "member-frontend", "license": "ISC", "repository": { "type": "git", "url": "git+ssh://git@github.com/npm/npm.git" }, "devDependencies": { "cheerio": "^1.0.0-rc.1", "gulp": "^3.9.1", "gulp-changed": "^1.3.2", "gulp-clean": "^0.3.2", "gulp-concat": "^2.6.0", "gulp-html-replace": "^1.6.2", "gulp-if": "^2.0.1", "gulp-minify-css": "^1.2.4", "gulp-rename": "^1.2.2", "gulp-rev": "^7.1.2", "gulp-rev-collector": "^1.0.5", "gulp-sync": "^0.1.4", "gulp-uglify": "^2.0.0", "map-stream": "0.0.7", "minimist": "^1.2.0", "vinyl-fs": "2.4.4" }, "bugs": { "url": "https://github.com/npm/npm/issues" }, "homepage": "https://github.com/npm/npm#readme", "version": "1.0.0", "main": "gulpfile.js", "dependencies": {}, "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "xutongbao" }
9.压缩后的index.js
$(function(){$("#button1").click(function(){alert("button1")})});
10.遍历所有html,替换文件命名后的效果
11.参考链接
变态的静态资源缓存与更新https://my.oschina.net/jathon/blog/404968
项目部署缓存解决方案http://www.cnblogs.com/1wen/p/5421212.html
相关文章推荐
- gulp的使用指南
- Gulp使用指南
- 《Gulp 入门指南》 : 使用 gulp 压缩 JS
- 《Gulp 入门指南》 : 使用 gulp 压缩 JS
- Gulp使用指南
- gulp基本使用指南
- 转:Gulp使用指南
- Gulp使用指南
- gulp 使用指南
- Gulp使用指南
- 前端自动化构建工具gulp使用指南
- Gulp 使用指南
- Ubuntu 操作系统使用指南
- Handoff使用指南 - 理论篇
- Java代码签名证书申请和使用指南
- CoreSeek(全文检索引擎 Sphinx 中文版)安装使用指南(CentOS6.5)
- log4net 使用指南(2)
- [转]何时使用委托而不使用接口(C# 编程指南)
- 使用 gulp 搭建前端环境入门篇(转载)
- C++的XML编程经验――LIBXML2库使用指南