Gulp监视-按顺序执行任务(同步)

背风处

我有一系列要由观察者运行的任务,但可以按顺序执行:

这是gulp任务和观察程序。

gulp.task('app_scss', function(){
    return gulp.src(appScssDir + '/main.scss')
        .pipe(sass({ style: 'compressed' }).on('error', gutil.log))
        .pipe(autoprefix('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
        .pipe(gulp.dest(appBuilderDir));
});

gulp.task('app_vendor_css', function(){
    return gulp.src(appProviderCssDir + '/*.css')
        .pipe(minifyCSS({ keepSpecialComments: 0 }))
        .pipe(concat('app_vendor.css'))
        .pipe(gulp.dest(appBuilderDir));

});

gulp.task('app_build_css', function(){
    return gulp.src(appBuilderDir + '/*.css')
        .pipe(concat('style.css'))
        .pipe(gulp.dest(targetCssDir));
});


gulp.task('watch', function () {
    gulp.watch(appScssDir + '/**/*.scss', ['app_scss', 'app_build_css']);
});

gulp.task('default', ['app_build_clean', 'app_scss', 'app_vendor_css', 'app_build_css', 'watch']);

因此,当我更新scss文件时,应该编译它们以创建单个css文件。然后,构建任务将文件与供应商文件合并在一起。但是每次我保存文件时,它总是落后一步。观看视频作为示例:http : //screencast.com/t/065gfTrY

我已重命名任务,更改了手表回调中的顺序等。

我犯了一个明显的错误吗?

安图万

Gulp会在“相同”时间启动所有任务,除非您声明依赖关系(或使流通过管道流向另一管道)。

因此,例如,如果您希望任务app_build_css等待任务app_scssapp_vendor_css完成任务,请声明依赖项,

gulp.task('app_scss', function(){
    return gulp.src(appScssDir + '/main.scss')
        .pipe(sass({ style: 'compressed' }).on('error', gutil.log))
        .pipe(autoprefix('last 2 version', 'safari 5', 'ie 8', 'ie 9', 'opera 12.1', 'ios 6', 'android 4'))
        .pipe(gulp.dest(appBuilderDir));
});

gulp.task('app_vendor_css', function(){
    return gulp.src(appProviderCssDir + '/*.css')
        .pipe(minifyCSS({ keepSpecialComments: 0 }))
        .pipe(concat('app_vendor.css'))
        .pipe(gulp.dest(appBuilderDir));

});

gulp.task('app_build_css', ['app_scss', 'app_vendor_css'], function(){
    return gulp.src(appBuilderDir + '/*.css')
        .pipe(concat('style.css'))
        .pipe(gulp.dest(targetCssDir));
});


gulp.task('watch', function () {
    gulp.watch(appScssDir + '/**/*.scss', ['app_build_css']);
});

gulp.task('default', ['app_build_clean', 'app_build_css', 'watch']);

检查Gulp.task()文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Gulp:如何监视多个文件并仅对更改文件执行任务?

来自分类Dev

Gulp:如何监视多个文件并仅对更改文件执行任务?

来自分类Dev

Gulp监视任务序列和浏览器同步

来自分类Dev

Android是否按顺序执行任务?

来自分类Dev

Gulp文件任务执行顺序

来自分类Dev

Gulp浏览器同步不监视和注入文件

来自分类Dev

失败的任务使用流队列时退出Gulp监视

来自分类Dev

Gulp在启动时运行一次监视任务

来自分类Dev

快速合并-按给定顺序执行任务

来自分类Dev

自添加媒体查询以来,Gulp SASS任务不再“监视”

来自分类Dev

保存sass / js / html文件时,gulp监视任务不起作用

来自分类Dev

如何停止一系列任务但继续在Gulp中监视文件?

来自分类Dev

如何使用Google App Engine任务队列按(FIFO)顺序执行任务?

来自分类Dev

gulp监视目录结构

来自分类Dev

Gulp 网络服务器任务和监视任务不能一起工作

来自分类Dev

Gulp监视不监视文件更改

来自分类Dev

gulp监视:未找到gulpfile

来自分类Dev

手动控制执行任务的顺序

来自分类Dev

在继续执行下一个任务之前,使gulp同步写入文件

来自分类Dev

并行执行任务

来自分类Dev

定期执行任务

来自分类Dev

如何同步延迟的计划任务以公平(按顺序)执行它们?

来自分类Dev

gulp任务无法按要求的顺序合并生成的sass事件流

来自分类Dev

如何使任务在gulp中同步完成?

来自分类Dev

Gulp监视文件的添加和删除

来自分类Dev

Gulp.watch将不继续监视文件。

来自分类Dev

如何按顺序执行定时任务?

来自分类Dev

使Gulp任务同步而无需创建其他任务

来自分类Dev

使Gulp任务同步,而无需创建其他任务

Related 相关文章

热门标签

归档