【问题标题】:I can't minify images with gulp-imagemin because of thumbs.db由于 thumbs.db,我无法使用 gulp-imagemin 缩小图像
【发布时间】:2018-03-17 12:57:31
【问题描述】:

由于 thumbs.db 文件,我无法缩小图像,当我尝试缩小图像时,出现如下所示的权限错误:

错误:EPERM:不允许操作,打开 'C:\Users\Pc\Desktop\template\dist\img\Thumbs.db'

我明白它为什么会这样,但我不知道如何防止这种情况。

编辑 1:gulp sn-p

gulp.task('imageMin', () =>
  gulp.src('src/img/*')
      .pipe(imagemin())
      .pipe(gulp.dest('dist/img'))
);

【问题讨论】:

  • 你试过用--verbose运行吗?稍微浏览一下 gulp-imagemin 的source,它似乎应该跳过任何不是可识别图像类型的文件。那么,也许 --verbose 会阐明这个问题吗? 编辑:实际上可能会从头开始,这可能与 [gulp-]imagemin 没有对该文件的读取权限有关,但无论如何都试图读取它......
  • 你能从你的 gulpfile 中发布相关的 sn-p 吗?
  • gulp.task('imageMin', () => gulp.src('src/img/*') .pipe(imagemin()) .pipe(gulp.dest('dist/img')) );

标签: gulp gulp-imagemin


【解决方案1】:

从您的 gulpfile 中,如果在尝试读取 thumbs.db 时导致问题,您似乎必须在您的 gulp.src 步骤中将其过滤掉,请尝试更新您的 gulpfile 以排除 thumbs.db像这样:

gulp.task('imageMin', () => gulp.src('src/img/*.!(db)')
    .pipe(imagemin())
    .pipe(gulp.dest('dist/img')));

(可能更干净)替代方法是确保您的 img 文件夹中永远不会出现 Thumbs.db,但这说起来容易做起来难。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-15
    • 2017-07-04
    • 1970-01-01
    • 1970-01-01
    • 2017-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多