glup 4配合gulp connect实现自动刷新
以前用gulp3 实现自动刷新很简单 代码如下
var gulp = require('gulp'),
connect = require('gulp-connect');
gulp.task('html', function () {
gulp.src('*.html')
.pipe(connect.reload());
});
gulp.task('connect', function() {
connect.server({
port: 8321,
livereload: true
});
});
gulp.task('watch', function () {
gulp.watch(['index.html'], ['html']);
});
gulp.task('default', ['connect','html','watch']);
社会在进步 项目在升级 然后就遇到了坑 新项目里使用gulp4打包后 发现配置完以后自动刷新只刷一次 然后就死了
主要代码如下 注意gulp 4 语法跟3 差别还是挺大的
gulp.task('html', function () {
console.time('gulp')
gulp.src('index.html')
.pipe(connect.reload());
console.timeEnd('gulp')
});
gulp.task('watch', function () {
gulp.watch('index.html', gulp.series('html'));
});
gulp.task('default', gulp.series(gulp.parallel('connect','watch')));
然后经过半天的研究 终于找到了原因
其实 单独跑html那个任务的时候 是有错误的
[19:11:15] The following tasks did not complete: html
[19:11:15] Did you forget to signal async completion?
然后就找了下解决这个报错的方法 然后自动刷新就好了 解决方案见链接
https://blog.csdn.net/qq_4120...
推荐 return 跟 回调函数的方法
gulp.task('html', function (done) {
console.time('gulp')
gulp.src('index.html')
.pipe(connect.reload());
console.timeEnd('gulp')
done()
});
搞定
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只为分享 哈哈哈