gulp報錯The following tasks did not complete


代碼如下:

//引用gulp模塊
const gulp = require('gulp');
//使用gulp.task()建立任務
gulp.task('first', () => {
    console.log('第一個gulp任務執行了');

    //要處理的文件   //將處理后的文件輸出到dist目錄下
    gulp.src('./src/css/base.css')
        .pipe(gulp.dest('./dist/css'));

});

 

報錯:

[01:26:16] The following tasks did not complete: first
[01:26:16] Did you forget to signal async completion?

 

 

原因:

這是gulp4.0版本使用task時,回調函數使用匿名函數帶來的問題,gulpgulp不再支持同步任務

解決方案有很多具體參考 https://www.gulpjs.com.cn/docs/getting-started/async-completion/

比較簡單的方法就是 添加callback,來指示函數完成

即代碼修改為:

 

//引用gulp模塊
const gulp = require('gulp');
//使用gulp.task()建立任務
gulp.task('first', (cb) => {
    console.log('第一個gulp任務執行了');

    //要處理的文件   //將處理后的文件輸出到dist目錄下
    gulp.src('./src/css/base.css')
        .pipe(gulp.dest('./dist/css'));
    cb();
});

  

 

運行結果如下:

PS C:\Users\User\Desktop\nodejs\gulp-demo> gulp first [01:34:28] Using gulpfile ~\Desktop\nodejs\gulp-demo\gulpfile.js
[01:34:28] Starting 'first'...
第一個gulp任務執行了
[01:34:28] Finished 'first' after 9.06 ms
PS C:\Users\User\Desktop\nodejs\gulp-demo>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM