運行之后會像下面一樣報這個錯誤,因為事按着一個視頻來寫的,所以
原本的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的異步執行