前端自动化之--gulp
2016-05-18 18:26
295 查看
css,js和图片的压缩以及精灵图的制作都是前端工程师绕不开的坑,现在的前端早已不是刀耕火种的时代,对于这些机械化没有技术含量的工作我们要坚决说no,解放自己的双手去做跟多有意义的事情,今天就介绍一款流行的前端自动化工具gulp,相信它一定能帮你大大提升工作效率,废话不多说直接上步骤:
安装gulp和gulp的宝宝们
2、配置gulpfile.js
3、直接在cmd中运行gulp。
成功后会生成一个dist文件夹,你要的东西全部都在这里面了,是不是很神奇啊。
代码具体含义都已经标注了,相信聪明的你看会肯定会明白的。
安装gulp和gulp的宝宝们
npm install gulp jshint gulp-clean-css gulp-uglify gulp-concat gulp-rename gulp-jshint --save-dev npm install gulp-autoprefixer gulp-imagemin gulp-notify gulp-livereload gulp-cache gulp.spritesmith del --save-dev
2、配置gulpfile.js
var gulp = require('gulp'), autoprefixer = require('gulp-autoprefixer'), minifycss = require('gulp-clean-css'), //压缩css jshint = require('gulp-jshint'), //js代码校验 uglify = require('gulp-uglify'), //压缩JS imagemin = require('gulp-imagemin'), //压缩图片 rename = require('gulp-rename'), //合并js文件 concat = require('gulp-concat'), notify = require('gulp-notify'), cache = require('gulp-cache'), livereload = require('gulp-livereload'), spritesmith = require('gulp.spritesmith'), del = require('del'); // css gulp.task('css', function() { return gulp.src('src/css/**/*.css') .pipe(minifycss()) .pipe(gulp.dest('dist/css')) .pipe(notify({ message: 'css task complete' })); }); // js gulp.task('js', function() { return gulp.src('src/js/*.js') .pipe(jshint()) .pipe(jshint.reporter('default')) .pipe(concat('main.js')) .pipe(rename({ suffix: '.min' })) .pipe(uglify()) .pipe(gulp.dest('dist/js')) .pipe(notify({ message: 'js task complete' })); }); // img gulp.task('img', function() { return gulp.src('src/img/**/*') .pipe(cache(imagemin({ optimizationLevel: 3, progressive: true, interlaced: true }))) .pipe(gulp.dest('dist/img')) .pipe(notify({ message: 'img task complete' })); }); //sprite gulp.task('s', function () { var spriteData = gulp.src('src/img/sprite/*.png').pipe(spritesmith({ imgName: 'sprite.png', cssName: 'sprite.css' })); return spriteData.pipe(gulp.dest('dist/img')); }); // Clean 任务执行前,先清除之前生成的文件 gulp.task('clean', function(cb) { del(['dist/css', 'dist/js', 'dist/img'], cb) }); // Default task 设置默认任务 gulp.task('default', function() { gulp.start('css', 'js', 'img','s'); }); 监听文件: // Watch gulp.task('watch', function() { // Watch .scss files gulp.watch('src/**/*.css', ['css']); // Watch .js files gulp.watch('src/**/*.js', ['js']); // Watch image files gulp.watch('src/img/**/*', ['img']); // Create LiveReload server livereload.listen(); // Watch any files in dist/, reload on change gulp.watch(['dist/**']).on('change', livereload.changed); });
3、直接在cmd中运行gulp。
成功后会生成一个dist文件夹,你要的东西全部都在这里面了,是不是很神奇啊。
代码具体含义都已经标注了,相信聪明的你看会肯定会明白的。
相关文章推荐
- Invalid action class configuration that references an unknown class解决方案
- [Effective JavaScript 笔记] 第10条:避免使用with
- 模拟 react 框架编码
- jquery select option事件
- js转换 underscore.js学习
- JS获取当前时间戳的方法转换时间戳
- 新手使用React时遇到的问题整理<一>
- JavaScript事件处理指南手册
- CDH5 安装过程
- jQuery验证问题
- html中div+css布局
- js数组排序去重
- html中的滚动标签
- BootStrap的使用文档
- 使用MFC的CHtmlView创建浏览器控件
- Jsp小案例——九九乘法表
- html中用框架做导航页
- react三级选择联级响应
- html中的框架集
- nodejs window下安装与配置淘宝镜像