gulp几个常见问题及解决方案

本文主要介绍了Gulp的常见报错及解决办法。包括找不到local gulp、cannot find module 'gulp',可通过npm link gulp或重新全局和项目安装解决;执行多任务时没带return返回语句会报错,需加上返回值;gulp 4.0版本执行多任务要采用gulp.parallel或gulp.series方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 找不到local gulp

报错代码:

$ gulp 
[23:29:31] Local gulp not found in 
[23:29:31] Try running: npm install gulp 

解决:npm link gulp

或者重新全局和项目安装gulp

2. cannot find module 'gulp'

报错代码:

cannot find module 'gulp'**

虽然项目中已经按照了gulp,但还是在输入gulp时,显示没找到gulp模块。

解决方法是:全局和项目重装gulp

全局: npm install -g gulp
项目里: npm install gulp --save-dev

3. 没带return返回语句

报错代码:

The following tasks did not complete: compass
Did you forget to signal async completion?

代码提示我们,是不是忘了写异步完成的标记?

这个提示常常是在执行多个任务产生的

加上 return返回值

gulp的task任务要加上返回值,如果是单任务,没有return其实也是可以执行的,不会报错。

当多任务执行,涉及到执行顺序时。没有return,就会导致当前任务还没完成就会同步执行下一个任务,就会报错。

没加return:

gulp.task('default', function() {
     gulp.src('src/entry.js')
    .pipe(webpack())
    .pipe(gulp.dest('dist/'));
});

加上return后:

gulp.task('default', function() {
  return gulp.src('src/entry.js')
    .pipe(webpack())
    .pipe(gulp.dest('dist/'));
});

4. gulp 4.0版本问题

报错代码

Error:  watch task has to be a function 

(optionally generated by using gulp.parallel or gulp.series)**

这里提示要采用gulp.parallel or gulp.series方法来执行多任务,因为我安装的是 gulp 4.0,于之前版本用法不同。

我报错的代码

gulp.task('watch', function () {
    //copyexceptminjs 是我定义的gulp任务
    gulp.watch('src/js/*.js', ['copyexceptminjs']);
});

b. 加入gulp.series或者gulp.parallel后
javascript gulp.task('watch', function () { gulp.watch('src/js/*.js', gulp.series('copyexceptminjs')); });

转载于:https://www.cnblogs.com/hjson/p/10546708.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值