繁体   English   中英

我写的自定义 gulp 文件有问题,还是我必须添加其他东西?

[英]Is there something wrong with the custom gulp-file I wrote, or do I have to add something else?

朋友们,当我在终端中运行gulp命令时出现错误。 我正在使用带有 nodejs@14.15.0 和 npm@6.14.8 的 Debian10 buster。 我已经在本地安装了 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 或根据“新”文档更新任务。

在V4中,需要通过一个taskFunction或者通过所产生的组成的工作gulp.series()gulp.parallel()中的第二个参数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))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM