gulp 5个方法

2017-02-13  本文已影响153人  overflow_hidden

1.Gulp5个基本方法:src、dest、task、run、watch

1.src

gulp模块的src方法,用于产生数据流。它的参数表示索要处理的文件,一般有以下几种形式:

js/app.js:指定确切的文件名

js/*.js:某个目录所有后缀为js的文件

js/**/*.js:某个目录及其所有子目录中的所有后缀为js的文件

!js/app.js:除了js/app.js以后的所有文件

*.+(js|css):匹配项目更目录下,所有后缀为js/css的文件

src方法的参数还可以是一个数组,用来指定多个成员:

gulp.src(['js/**/*.js','!js/**/*.min.js']);

2. Gulp.dest()

gulp模块的dest方法,可以用来传递文件,同时写入文件到指定目录。可以重复的发送传递给它的数据,因此可以将文件传送到多个目录中

gulp.src('app/templates/*.jade')

.pipe(jade())

.pipe(gulp.dest('/dist/templates'))

.pipe(minify())

.pipe(gulp.dest('/dist/minified_templates'));

3. Gulp.task()

gulp模块的task方法,用于定义具体的任务。它的第一个参数是任务名,第二个参数是任务函数。如果一个任务名是default  则在执行gulp的时候就默认执行了。

举个栗子:

va  rgulp = require('gulp');

var   htmlmin = require('gulp-htmlmin');

gulp.task('minify',function(){ //minify为任务自定义名称

    gulp.src('app/*.html')

    .pipe(htmlmin({collapseWhitespace:true}))

    .pipe(gulp.dest('dist'))

});

//执行  gulp-minify

4.Gulp.run()

gulp模块的run方法,表示要执行的任务。可能会使用单个参数的形式传递多个任务。

ps:任务是尽可能多的并行执行,并且可能不会按照指定的顺序执行。

gulp.run('scripts','copyfiles','builddocs');

gulp.run('scripts','copyfiles','builddocs',function(err){

      //所有任务完成,或者出发错误而终止

});

可以使用gulp.run在其他任务中运行任务。也可以在默认任务(default)中使用gulp.run组织多个更小的任务为一个大任务。

5.Gulp.watch()

gulp模块的watch方法,用于指定需要监视的文件。一旦这些文件发生变动,就运行指定任务:

gulp.task('watch',function(){

    gulp.watch(''app/*.html'',['minify']);

//上面代码指定,一旦app目录下后缀为.html的文件发生变化,就运行minify任务。

})

上一篇 下一篇

猜你喜欢

热点阅读