@FarmerZ
2016-06-22T11:16:17.000000Z
字数 5041
阅读 581
gulp task npm install package
npm install -g gulp guop --help :显示帮助信息cd desktop 到桌面md cdd-gulp 创建一个文件夹npm init 初始化npmnpm install gulp --save-devnpm install命令便可下载到所有需要的文件。require("");方法导入要使用的模块,并创建其对象 eg: var gule = gulp('gulp')};</li>
<li>2.使用task方法创建要执行的任务
syntax: gulp.task('tastName',function(){});
eg: gulp.task('hellw,function(){
console.log("您好")};);syntax: gulp.task('taskName',['otherTaskName1','otherTaskName2',...])eg: gulp hello按回车便开始执行gulp.src().pipe()处理文件,在其中可以使用gulp的插件来处理读取出来的文件.pipe(gulp.dest())把处理好的文件放到指定的地方javaScript
var gulp = require('gulp');//创建gulp对象gulp.task('copy-index',function(){//创建taskreturn gulp.src('index.html').pipe(gulp.dest("dist"));//使用src方法读取文件,然后放入管道,在使用gulp的dest方法把其放置到一个新建的文件夹中,完成复制。});
`gulp`var gulp = require('gulp');gulp.task('copy-index',function(){return gulp.src('index.html').pipe(gulp.dest("dist"));});gulp.task('images',function(){return gulp.src('images/*.jpg').pipe(gulp.dest('dist/images'));//整个’images/*.jpg‘写法称作glob,通配符‘*’表示大量匹配,整个glob的意思是,匹配在images文件夹中以.jpg结尾的文件。});
eg: guli.src({fileNmae1,fileName2}) images/*,但是此时不包含icons文件夹中的文件,如果想要包含其中的文件可以使用images/*/*;如果不在乎级别想要整个复制目标文件夹中的所有东西可以使用images/**/*方法。即使用两个星号表示所有的级别。javaScript
gulp.task('data',function(){return gulp.src(['xml/*.xml','json/*.json']).pipe(gulp.dest('dist/data'));//利用数组增加需要操作的文件数量来进行更多的文件操作});
javascript
gulp.task('data',function(){return gulp.src(['xml/*.xml','json/*.json','!json/secret*.json']).pipe(gulp.dest('dist/data'));//利用叹号!排除需要复制的文件});
javascript
gulp.task('build',['copy-index','images','data'],function(){console.log("执行完毕!");//是用数组执行要执行的任务});
syntax: gulp.watch('files',['functionName']); javascript
//watch 监视文件变化gulp.task('watch',function(){gulp.watch('index.html',['copy-index']);gulp.watch('images/**/*.{jpg,png}',['images']);gulp.watch(['xml/*.xml','json/*.json','!json/secret*.json'],['data']);})
使用方法
npm install gulp-sass --save-devjavascript
var connect = require('gulp-connect');//创建对象gulp.task('server',function(){//服务器设置connect.server({root:'dist',//这个始对象的root属性livereload: true//livereload属性});});gulp.task('copy-index',function(){return gulp.src('index.html').pipe(gulp.dest("dist")).pipe(connect.reload());//添加到copy-index任务的pipe方法。});
gulp
gulp.task('script', function(){return gulp.src(['js/needConcat.js', 'js/needConcat_1.js']).pipe(concat('vender.js'))//可以命名.pipe(gulp.dest('dist/js'));});
gulp
gulp.task('script', function(){return gulp.src(['js/needConcat.js', 'js/jquery*.js']).pipe(concat('vender.js'))//合并js文件的管道.pipe(uglify())//此处是压缩js文件的管道.pipe(gulp.dest('dist/js'));});
gulp
gulp.task('script', function(){return gulp.src(['js/needConcat.js', 'js/jquery*.js']).pipe(concat('vender.js')).pipe(gulp.dest('dist/js')).pipe(uglify()).pipe(rename('vender.min.js'))//重命名的地方.pipe(gulp.dest('dist/js'));});
gulp
gulp.task('sass', function(){return gulp.src('stylesheet/**/*.scss').pipe(sass()).pipe(minifyCSS())//压缩css的管道.pipe(gulp.dest('dist/css'));});
gulp
gulp.task('images',function(){return gulp.src('images/**/*').pipe(imagemin())//压缩图片的管道.pipe(gulp.dest('dist/images'));});