gulp遇到錯誤:The following tasks did not complete: default Did you forget to signal async completion?


運行之后會像下面一樣報這個錯誤,因為事按着一個視頻來寫的,所以

 

 原本的gulpfile.js如下

const gulp = require('gulp')
gulp.task('default',()=>{
    // console.log('default task');
    gulp.src(['src/**/*'])
        .pipe(gulp.dest('build'))
   
})

改成如下的形式就可以了

const gulp = require('gulp')
gulp.task('default',function(done){
    // console.log('default task');
    gulp.src(['src/**/*'])
        .pipe(gulp.dest('build'))
        done()
})

運行之后

 

原因:因為gulp不再支持同步任務.因為同步任務常常會導致難以調試的細微錯誤,例如忘記從任務(task)中返回 stream。

當你看到 "Did you forget to signal async completion?" 警告時,說明你並未使用前面提到的返回方式。你需要使用 callback 或返回 stream、promise、event emitter、child process、observable 來解決此問題。具體詳情請看API的異步執行


免責聲明!

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



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