gulp常用方法有以下几种:
gulp.src()入口文件路径
gulp模块的src方法。用于产生数据流,它的参数表示所要处理的文件,一般有以下几种:
- js/index.js:指定确定的文件名
- js/*.js:某个目录下所有后缀名为js的文件
- js/**/*.js:某个目录及其所有子目录中所有后缀名为js的文件
- !js/index.js:除了js/index.js以外的所有文件
此处的js也可换成css、img等文件。
src方法的参数可以是一个数组,用来指定多个元素,如:gulp.src(['js/*.js','!js/app.min.js'])。
gulp.dest()用来写入文件
gulp模块的dest方法,可以用来传递文件,同时写入文件到指定目录。可以重复的发送传递给它的数据,因此可以将文件输出到多个目录。
gulp.src('src/js/*.js')
.pipe(gulp.dest('build/js/'))
gulp.task()用来定义具体任务
gulp模块的task方法,用于定义具体的任务。它的第一个参数是任务名,第二个参数是任务函数,在控制台可以通过gulp 任务名 执行某种操作。
gulp.task('js',function () {
gulp.src('./src/js/*.js')
.pipe(babel({
presets:['es2015']
}))
.pipe(gulp.dest('./build/js/'))
.pipe(reload({
stream:true
}))
});
gulp.run()用来执行任务
gulp模块的run方法,表示要执行的任务。可能会使用单个参数的形式传递多个任务。
PS:任务是尽可能多的并行执行,并且可能不会按照指定的顺序执行。
gulp.watch()用来监视文件变化
gulp模块的watch方法,用于指定需要监听的文件,一旦发生变化就会执行指定任务,第一个参数是指定的文件,第二个参数是任务名或任务方法。
gulp.watch('src/js/*.js',["js"])