Gulp - 组合任务 gulp 创建一个应用 gulp watch方法 Gulp - 组合任务 任务启用模块化方法来配置Gulp。我们需要为每个依赖项创建任务,在我们找到并安装其他插件时,我们将添加这些任务。Gulp任务将具有以下结构 - gulp.task('task-name', function() { //do stuff here }); 其中“task-name”是一个字符串名称,“function()”执行您的任务。“gulp.task”将函数注册为名称内的任务,并指定对其他任务的依赖关系。 安装插件 让我们带一个叫做minify-css的插件来合并和缩小所有的CSS脚本。它可以通过使用npm进行安装,如以下命令所示 - npm install gulp-minify-css --save-dev 要使用“gulp-minify-css插件”,您需要安装另一个名为“gulp-autoprefixer”的插件,如以下命令所示 - npm install gulp-autoprefixer --save-dev 要连接CSS文件,请按照以下命令所示安装gulp-concat - npm install gulp-concat --save-dev 安装插件后,您需要在配置文件中编写依赖关系,如下所示 - var autoprefix = require('gulp-autoprefixer'); var minifyCSS = require('gulp-minify-css'); var concat = require('gulp-concat'); 将任务添加到Gulp文件 我们需要为每个依赖项创建任务,我们将在安装插件时添加这些任务。Gulp任务将具有以下结构 - gulp.task('styles', function() { gulp.src(['src/styles/*.css']) .pipe(concat('styles.css')) .pipe(autoprefix('last 2 versions')) .pipe(minifyCSS()) .pipe(gulp.dest('build/styles/')); }); 'concat'插件连接CSS文件,'autoprefix'插件指示所有浏览器的当前版本和以前版本。它通过调用具有代表目标目录的参数的'dest'方法来将src文件夹中的所有CSS脚本缩小并复制到构建文件夹中。 要运行该任务,请在项目目录中使用以下命令 - gulp styles 同样,我们将使用另一个名为'gulp-imagemin'的插件来压缩图像文件,该文件可以使用以下命令进行安装 - npm install gulp-imagemin --save-dev 您可以使用以下命令将依赖关系添加到配置文件中 - var imagemin = require('gulp-imagemin'); 您可以为以上定义的依赖项创建任务,如下面的代码所示。 gulp.task('imagemin', function() { var img_src = 'src/images/**/*', img_dest = 'build/images'; gulp.src(img_src) .pipe(changed(img_dest)) .pipe(imagemin()) .pipe(gulp.dest(img_dest)); }); 图像位于保存在img_srcobject中的“src / images / ** / *”中。它被传递给由'imagemin'构造函数创建的其他函数。它压缩src文件夹中的图像,并通过调用具有代表目标目录的参数的“dest”方法复制到build文件夹。 要运行该任务,请在项目目录中使用以下命令 - gulp imagemin 组合多个任务 通过在配置文件中创建默认任务,您可以一次运行多个任务,如以下代码所示 - gulp.task('default', ['imagemin', 'styles'], function() { }); Gulp文件已建立并准备执行。在项目目录中运行以下命令以运行上述组合任务 - gulp 在使用上述命令运行任务时,您将在命令提示符中得到以下结果 - C:\work>gulp [16:08:51] Using gulpfile C:\work\gulpfile.js [16:08:51] Starting 'imagemin'... [16:08:51] Finished 'imagemin' after 20 ms [16:08:51] Starting 'styles'... [16:08:51] Finished 'styles' after 13 ms [16:08:51] Starting 'default'... [16:08:51] Finished 'default' after 6.13 ms [16:08:51] gulp-imagemin: Minified 0 images gulp 创建一个应用 gulp watch方法