如何解决我编写的自定义gulp文件是否存在问题,还是必须添加其他内容?
朋友,我在终端上运行gulp
命令时遇到错误。 我正在将Debian10 buster与nodejs@14.15.0和npm@6.14.8一起使用。 我已在本地安装gulp@4.0.2。
AssertionError [ERR_ASSERTION]: Task function must be specified
at Gulp.set [as _setTask] (/home/prithvi/Desktop/bootstrap/node_modules/undertaker/lib/set-
task.js:10:3)
at Gulp.task (/home/prithvi/Desktop/bootstrap/node_modules/undertaker/lib/task.js:13:8)
at Object.<anonymous> (/home/prithvi/Desktop/bootstrap/gulpfile.js:32:6)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Module.require (internal/modules/cjs/loader.js:952:19)
at require (internal/modules/cjs/helpers.js:88:18)
at requireOrImport (/usr/lib/node_modules/gulp-cli/lib/shared/require-or-import.js:19:11) {
generatedMessage: false,code: 'ERR_ASSERTION',actual: false,expected: true,operator: '=='
}
以下gulp代码有什么问题?
下面是gulpfile.js文件
'use strict';
var gulp = require('gulp'),sass = require('gulp-sass'),browserSync = require('browser-sync');
gulp.task('sass',function() {
return gulp.src('./styles/*.scss')
.pipe(sass().on('error',sass.logError))
.pipe(gulp.dest('./styles'));
});
gulp.task('sass:watch',function() {
gulp.watch('./styles/*.scss',['sass']);
});
gulp.task('browser-sync',function() {
var files = [
'./*.html','./styles/*.css','./js/*.js','./img/*.{png,jpg,gif}'
];
browserSync.init(files,{
server : {
baseDir: './'
}
});
});
gulp.task('default',['browser-sync'],function() {
gulp.start('sass:watch');
});
解决方法
您正在使用具有v3语法的Gulp v4。您应该降级到v3或根据“新” documentation更新任务。
在v4中,您需要将gulp.series()
或gulp.parallel()
生成的taskFunction
或组合任务作为task()
中的第二个参数传递。例如,您的sass任务可以编写如下:
function sass() {
return gulp.src('./styles/*.scss')
.pipe(sass().on('error',sass.logError))
.pipe(gulp.dest('./styles'))
}
gulp.task('sass',gulp.series(sass))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。