【问题标题】:gulp-replace creating an unwanted directorygulp-replace 创建一个不需要的目录
【发布时间】:2016-05-13 10:01:20
【问题描述】:

我创建了这个简单的 gulp 任务:

gulp.task('default', function () {
  gulp.src(['test.txt'])
    .pipe(replace('aaa', 'bbb'))
    .pipe(gulp.dest('result.txt'))
})

test.txt 源文件与 gulpfile 位于同一目录中。

问题是它在result.txt/test.txt 中创建结果文件。

如何在没有这个不需要的result.txt/ 文件夹的情况下创建这个config.js 文件?

【问题讨论】:

  • gulp.dest('public/') 应该可以,不是吗?
  • @Louis 不,它说:illegal operation on a directory
  • 好吧,我基本上复制了您在代码中所做的事情,并包含了我建议的修复程序,它在这里有效。请编辑您的问题,使其成为minimal reproducible example。显示您尝试的所有内容并添加您得到的确切错误或结果。
  • @Louis 我刚刚编辑了我的问题,谢谢。

标签: gulp gulp-replace


【解决方案1】:

根据文档,gulp.dest 采用目标目录,而不是文件名。

如果你想和你的gulpfile.js放在同一个目录,那么使用.

gulp.task('default', function () {
  gulp.src(['test.txt'])
    .pipe(replace('aaa', 'bbb'))
    .pipe(gulp.dest('.'))
});

小心,因为这会覆盖原始文件!您不能使用 gulp.dest 重命名文件,因为您需要使用另一个包,例如 gulp-rename 并执行以下操作:

gulp.task('default', function () {
  gulp.src(['test.txt'])
    .pipe(replace('aaa', 'bbb'))
    .pipe(rename('target.txt'))
    .pipe(gulp.dest('.'))
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-13
    • 2020-10-09
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多