gulp-imagemin:0 张图片被压缩了吗?

3

你好,在我的项目中,我正在使用gulp-imagemin来将我的图片从开发到生产应用程序中进行压缩。但是这似乎没有起作用,因为我收到的文件夹里没有图片。

以下是所做的内容:

gulp.task('images', function () {

return gulp.src(config.app + 'content/images/**')
    .pipe(plumber({errorHandler: handleErrors}))
    .pipe(changed(config.dist + 'content/images'))
    .pipe(imagemin({optimizationLevel: 5, progressive: true, interlaced: true}))
    .pipe(rev())
    .pipe(gulp.dest(config.dist + 'content/images'))
    .pipe(rev.manifest(config.revManifest, {
        base: config.dist,
        merge: true
    }))
    .pipe(gulp.dest(config.dist))
    .pipe(browserSync.reload({stream: true}));

});

出了什么问题?


1
你能提供一下你的环境细节吗?比如操作系统、Node版本等等。我在CentOS上使用Jenkins运行时也遇到了同样的问题,但是在Mac OS X本地运行却没有问题。可能与依赖项或版本有关...因为即使添加了verbose: true,它也会默默地失败。 - Patrice Blanchardie
看起来你有两个 gulp.dest,另外,你的 config.app 变量中的路径是什么?此外,rev() 是做什么的? - joe
请检查我对同一问题的回答:https://dev59.com/O5bfa4cB1Zd3GeqPwqin#55765109 - Patrice Blanchardie
1个回答

1

我也遇到了同样的问题,但是通过在src和dist中使用绝对路径解决了。

var imagemin = require('gulp-imagemin');
gulp.task('imagemin-uploads', function () {
    return gulp.src('F:/laragon/www/fashion/wp-content/uploads/**/*')
        .pipe(imagemin([
        imagemin.gifsicle({interlaced: true}),
        imagemin.jpegtran({progressive: true}),
        imagemin.optipng(),
        imagemin.svgo([{removeViewBox: false}, {minifyStyles: false}])
        ], {verbose: true}))
        .pipe(gulp.dest('F:/laragon/www/fashion/wp-content/themes/uploads/'))
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接