javascript – Gulp错误:监视任务必须是一个功能
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – Gulp错误:监视任务必须是一个功能,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2577字,纯文字阅读大概需要4分钟。
内容图文
![javascript – Gulp错误:监视任务必须是一个功能](/upload/InfoBanner/zyjiaocheng/706/ee84bc9add924fb99eba64989c78f67a.jpg)
这是我的gulpfile:
// Modules & Plugins
var gulp = require('gulp');
var concat = require('gulp-concat');
var myth = require('gulp-myth');
var uglify = require('gulp-uglify');
var jshint = require('gulp-jshint');
var imagemin = require('gulp-imagemin');
// Styles Task
gulp.task('styles', function() {
return gulp.src('app/css/*.css')
.pipe(concat('all.css'))
.pipe(myth())
.pipe(gulp.dest('dist'));
});
// Scripts Task
gulp.task('scripts', function() {
return gulp.src('app/js/*.js')
.pipe(jshint())
.pipe(jshint.reporter('default'))
.pipe(concat('all.js'))
.pipe(uglify())
.pipe(gulp.dest('dist'));
});
// Images Task
gulp.task('images', function() {
return gulp.src('app/img/*')
.pipe(imagemin())
.pipe(gulp.dest('dist/img'));
});
// Watch Task
gulp.task('watch', function() {
gulp.watch('app/css/*.css', 'styles');
gulp.watch('app/js/*.js', 'scripts');
gulp.watch('app/img/*', 'images');
});
// Default Task
gulp.task('default', gulp.parallel('styles', 'scripts', 'images', 'watch'));
如果我单独运行图像,脚本或css任务就可以了.我不得不在任务中添加回报 – 这不在书中,但谷歌搜索显示我这是必需的.
我遇到的问题是默认任务错误:
[18:41:59] Error: watching app/css/*.css: watch task has to be a function (optionally generated by using gulp.parallel or gulp.series)
at Gulp.watch (/media/sf_VM_Shared_Dev/webdevadvlocal/gulp/public_html/gulp-book/node_modules/gulp/index.js:28:11)
at /media/sf_VM_Shared_Dev/webdevadvlocal/gulp/public_html/gulp-book/gulpfile.js:36:10
at taskWrapper (/media/sf_VM_Shared_Dev/webdevadvlocal/gulp/public_html/gulp-book/node_modules/undertaker/lib/set-task.js:13:15)
at bound (domain.js:287:14)
at runBound (domain.js:300:12)
at asyncRunner (/media/sf_VM_Shared_Dev/webdevadvlocal/gulp/public_html/gulp-book/node_modules/async-done/index.js:36:18)
at nextTickCallbackWith0Args (node.js:419:9)
at process._tickCallback (node.js:348:13)
at Function.Module.runMain (module.js:444:11)
at startup (node.js:136:18)
我认为这是因为监视任务中也没有回报.错误信息也不清楚 – 至少对我而言.我尝试在最后一个gulp.watch()之后添加一个返回但是也没有用.
解决方法:
在gulp 3.x中你可以将任务的名称传递给gulp.watch(),如下所示:
gulp.task('watch', function() {
gulp.watch('app/css/*.css', ['styles']);
gulp.watch('app/js/*.js', ['scripts']);
gulp.watch('app/img/*', ['images']);
});
在gulp 4.x中不再是这种情况.你必须传递一个功能.在gulp 4.x中执行此操作的常规方法是传递仅具有一个任务名称的gulp.series()调用.这将返回仅执行指定任务的函数:
gulp.task('watch', function() {
gulp.watch('app/css/*.css', gulp.series('styles'));
gulp.watch('app/js/*.js', gulp.series('scripts'));
gulp.watch('app/img/*', gulp.series('images'));
});
内容总结
以上是互联网集市为您收集整理的javascript – Gulp错误:监视任务必须是一个功能全部内容,希望文章能够帮你解决javascript – Gulp错误:监视任务必须是一个功能所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。