【问题标题】:Gulp - When to return a value and when not toGulp - 何时返回值,何时不返回
【发布时间】:2019-06-14 08:36:22
【问题描述】:

Gulp 4。这个改编自教程的 sn-p 从 srcpipe 返回一些东西,实际上我什至不知道那部分(我不怎么做 JS)。

function jquery() {
    return gulp.src(["node_modules/jquery/dist/**/*.*"])
        .pipe(gulp.dest("wwwroot/lib/jquery/dist"));
};
gulp.task(jquery);

我想添加另一个复制任务,这意味着添加另一个 srcpipe 但这意味着不再从第一个返回,我想从第二个返回,但我会看到第一个发生错误?

像这样:

function jquery() {
    gulp.src(["node_modules/jquery/dist/**/*.*"])
        .pipe(gulp.dest("wwwroot/lib/jquery/dist"));

    return gulp.src(["node_modules/jquery-validation/dist/**/*.*"])
        .pipe(gulp.dest("wwwroot/lib/jquery-validation/dist"));
};
gulp.task(jquery);

我注意到示例中的某些任务没有返回任何内容。我还注意到 Gulp 文档希望我调用一个回调来指示完成 cb()(他们为什么不叫它 complete()?JS 让我很烦)但在人们的博客教程中没有看到这一点。

困惑。

【问题讨论】:

    标签: gulp


    【解决方案1】:

    我快到了。

    [11:38:33] Using gulpfile C:\DATA\Git\MA\src\Analytics.Quest.Web.Pages\gulpfile.js
    [11:38:33] Starting 'staticfiles'...
    [11:38:33] The following tasks did not complete: staticfiles
    [11:38:33] Did you forget to signal async completion?
    

    当我不叫cb()done() 时,我注意到 Gulp 的呻吟很有帮助。从管道返回一个流似乎也消除了这个警告,但我不知道为什么我应该返回一个流,以及当我有两个流并且只返回第二个时该怎么办,或者什么使用它。


    我已经放弃了不知道对 gulp.src(...).pipe(...) 的调用是阻塞还是异步的,只是将我想复制的每一堆东西都放入了自己的函数和任务中,然后将它们全部放入了 parallel

    像这样。

    function jquery() {
        return gulp.src(["node_modules/jquery/dist/**/*.*"])
            .pipe(gulp.dest("wwwroot/lib/jquery/dist"));
    };
    gulp.task(jquery);
    
    
    function jqueryValidation() {
        return gulp.src(["node_modules/jquery-validation/dist/**/*.*"])
            .pipe(gulp.dest("wwwroot/lib/jquery-validation/dist"));
    };
    gulp.task(jqueryValidation);
    
    
    function jqueryValidationUnobtrusive() {
        return gulp.src(["node_modules/jquery-validation-unobtrusive/dist/**/*.*"])
            .pipe(gulp.dest("wwwroot/lib/jquery-validation-unobtrusive/dist"));
    };
    gulp.task(jqueryValidationUnobtrusive);
    
    
    function jqueryValidationUnobtrusiveBootstrap() {
        return gulp.src(["node_modules/jquery-validation-unobtrusive-bootstrap/dist/**/*.*"])
            .pipe(gulp.dest("wwwroot/lib/jquery-validation-unobtrusive-bootstrap/dist"));
    };
    gulp.task(jqueryValidationUnobtrusiveBootstrap);
    
    
    function jqueryAll(done) {
        parallel(jquery, jqueryValidation, jqueryValidationUnobtrusive, jqueryValidationUnobtrusiveBootstrap);
        done();
    }
    gulp.task(jqueryAll);
    

    【讨论】:

      猜你喜欢
      • 2015-03-03
      • 2023-03-28
      • 1970-01-01
      • 2014-03-08
      • 2017-10-12
      • 2015-03-22
      • 1970-01-01
      • 2019-05-30
      • 2012-01-21
      相关资源
      最近更新 更多