/gulp

gulp

Primary LanguageJavaScript

"# gulp" 新建一个gulp文件夹,并在该目录下执行 npm init 命令以创建一个package.json文件。 npm i gulp -s 命令作为项目的开发依赖(devDependencies) 根目录下创建gulpfile.js 以下代码中定义了一个简单的默认任务 var gulp = require('gulp'); gulp.task('default',function(){ console.log('hello world'); }); 运行gulp任务,只需切换到存放gulpfile.js文件的目录执行gulp,gulp 后面加上任务名执行指定任务,否则执行默认任务。 gulp.task方法用来定义任务 gulp.src()输出符合所提供的匹配模式或者匹配模式的数组的文件(gulp.src('js/.js'),gulp.src(['js/.js','js/js/.js'])) gulp.dest()方法是用来写文件的 gulp.watch()用来监视文件的变化 gulp.task('mini-js',function () { gulp.src('js/.js') //该任务针对的文件 .pipe(plugins.uglify()) //该任务调用的模块 .pipe(plugins.concat('index.min.js')) .pipe(gulp.dest('dist/js')) //写入dist/js文件夹中 }); 常用gulp插件 1.gulp-load-plugins自动加载插件 通常要使用gulp的插件,首先得用require来把插件加载进来,如果我们要使用的插件非常多,会使我们的gulpfile.js文件变得很冗长,如下 var gulp = require('gulp'), //一些gulp插件,abcd这些命名只是用来举个例子 a = require('gulp-a'), b = require('gulp-b'), c = require('gulp-c'), //更多的插件... z = require('gulp-z'); 而 gulp-load-plugins 这个插件能自动帮你加载package.json文件里的gulp插件
(gulp-load-plugins并不会一开始就加载所有package.json里的gulp插件,而是在我们需要用到某个插件的时候,才去加载那个插件)使用方法如下: 在gulpfile.js中 var gulp = require('gulp'); //加载gulp-load-plugins插件,并马上运行它 var plugins = require('gulp-load-plugins')(); 在使用gulp-rename插件时,用plugins.rename代替(也就是原始插件名去掉gulp-前缀,之后再转换为驼峰命名) 2.gulp-rename 重命名 .pipe(rename('jquery.min.js')) //会将jquery.js重命名为jquery.min.js 3.gulp-uglify js文件压缩 gulp.task('minify-js', function () {//minify-js自定义任务名 gulp.src('js/*.js') // 要压缩的js文件 .pipe(plugins.uglify()) //使用uglify进行压缩,更多配置请参考: .pipe(gulp.dest('dist/js')); //压缩后的路径 }); 4.gulp-minify-css css文件压缩 5.gulp-minify-html html文件压缩 6.gulp-jshint js代码检查 7.gulp-concat 文件合并 8.gulp-less less文件编译 9.gulp-imagemin 图片压缩 10.Browsersync + Gulp.js npm i browser-sync gulp -s 在gulpfile.js 文件中 var gulp = require('gulp'); var browserSync = require('browser-sync').create();

// 启动静态服务器 gulp.task('browser-sync', function() { browserSync.init({ server: { baseDir: "./dist" } }); }); 相应的task任务中重载浏览器 .pipe(browserSync.reload({ stream:true }))