【问题标题】:Gulp4 migration - Invalid glob argumentGulp4 迁移 - 无效的 glob 参数
【发布时间】:2019-09-17 18:11:01
【问题描述】:

我正在处理从 3.9.0 版到 gulp 4.0.0 版的 gulp 迁移。

我在 gulp.src('') 上的 gulpfile.js 中遇到错误,错误消息是“错误:无效的 glob 参数:”

我在 gulpfile.js 中的 gulp.task() 看起来像这样 -

gulp.task('build-version', function(done) {
    var dir = path.build + '/js',
        filename = "build.js";

    gulp.src('')
        .pipe(ngConfig('ppm', {
            createModule: false,
            constants: {
                newUIBuildVersion: buildVersion
            }
        }))
        .pipe(rename(filename))
        .pipe(gulp.dest(dir));

    // lint build.js file
    return gulp.src(dir + '/' + filename)
        .pipe(jshint(config.jshint))
        .pipe(jshint.reporter(stylish))
        .pipe(jshint.reporter('fail'))
        .on('error', function(err) {
            log(err);
        });});

gulp 版本:4.0.0,Node 版本:8.11.4

我的错误信息:enter image description here

请在终端中找到错误信息的图片。

有没有人知道我该如何解决这个问题。

【问题讨论】:

  • 你这里什么都没有: : gulp.src('').
  • 是的,我知道,但我以前的 gulpfile.js 版本只有空字符串,它工作得非常好。任何建议我可以在 gulp.src('') 中传递什么。
  • 感谢您的回复,非常感谢。

标签: javascript gulp


【解决方案1】:

我偶然发现了这个问题,并通过研究发现了这个问题,因为它看起来似乎没有得到完全回答。

是的,问题源于 gulp.src('') 为空,但在 Gulp 3 中这是可以的,默认情况下允许这样做。

根据 Gulp 文档(为 4.0 编写的事实来源,而不是从迁移的角度来看),您似乎可以传入一个 option allowEmpty,默认情况下为 false。因此,如果您的代码中有gulp.src(''),您还需要指定allowEmpty 选项。

他们为上下文提供的一个例子是src(globs, [options])

这是一个例子:gulp.src('', {allowEmpty: true})

如果这不起作用,我读过的其他文章说:gulp.src([], {allowEmpty: true}) 或:gulp.src('.', {allowEmpty: true})

如果您遇到其他问题,这里是所有选项的链接。

https://gulpjs.com/docs/en/api/src#errors

希望这会有所帮助!谢谢!

【讨论】:

  • 我能够使用它:gulp.src('.', {allowEmpty: true}) 传递当前目录
  • 以防万一它可以帮助其他人,-在我的情况下,gulp 正在寻找一个不存在的特定文件,同样的错误。
  • 一个空间也工作了gulp.src(' ', {allowEmpty: true})
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-31
  • 2018-06-02
  • 1970-01-01
  • 1970-01-01
  • 2020-01-12
  • 2018-08-01
  • 2020-02-09
相关资源
最近更新 更多