gulp使用及报错Did you forget to singal async completion?解决
Gulp 是基于 node 实现 Web 前端自动化开发的工具。(自动化构建工具)
一. Gulp作用:
1.项目上线,Html,css,js文件压缩合并
2.语法转换(es6,less....)
3.公共文件抽离
4.修改问价浏览器自动刷新
简要:我在使用gulp压缩时,报错如下:
二.Gulp常用方法:
1.gulp.src()---获取任务要处理的文件
2.gulp.dest()---输出文件
3.gulp.task()--- 建立gulp文件
4. gulp.watch()--- 监控文件的变化
三.报错代码:
const gulp = require('gulp'); //gulp.task创建gulp文件 gulp.task('first',()=>{ console.log('执行first gulp task'); //gulp.src获取要处理的文件 gulp.src('./src/alibaixiu.css') .pipe(gulp.dest('dist/css')); });
报错:Did you forget to singal async completion?
主要原因可能是代码中的函数存在异步机制,在Gulp 3.x中,这样做或许可以。如果未明确表示异步完成,则gulp会假设你的任务是同步的,并且一旦任务函数返回就完成了。
Gulp 4.x在这方面更严格。所以必须明确表示任务已完成。
只需要加return返回即可。
const gulp = require('gulp'); //gulp.task创建gulp文件 gulp.task('first',()=>{ console.log('执行first gulp task'); //gulp.src获取要处理的文件 return gulp.src('./src/alibaixiu.css') //此处解决报错 .pipe(gulp.dest('dist/css')); });