1 回答

TA貢獻1825條經驗 獲得超6個贊
您可以簡單地為不同的圖像集多次包含插件,并對每個圖像應用不同的 imagemin 設置:
module.exports = {
? ? plugins: [
? ? ? ? new ImageminPlugin({
? ? ? ? ? ? externalImages: {
? ? ? ? ? ? ? ? context: '.',
? ? ? ? ? ? ? ? sources: glob.sync('img/**/*.{png,jpg,jpeg,gif,svg}'),
? ? ? ? ? ? ? ? destination: 'img',
? ? ? ? ? ? ? ? fileName: '../[path][name].[ext]'
? ? ? ? ? ? },
? ? ? ? ? ? pngquant: ({quality: '80-100'}),
? ? ? ? ? ? plugins: [
? ? ? ? ? ? ? ? imageminMozjpeg({quality: 80, progressive: true}),
? ? ? ? ? ? ? ? imageminSvgo()
? ? ? ? ? ? ],
? ? ? ? ? ? jpegtran: {progressive: true}
? ? ? ? }),
? ? ? ? new ImageminPlugin({
? ? ? ? ? ? externalImages: {
? ? ? ? ? ? ? ? context: '.',
? ? ? ? ? ? ? ? sources: glob.sync('pages/**/*.{png,jpg,jpeg,gif,svg}'),
? ? ? ? ? ? ? ? destination: 'img',
? ? ? ? ? ? ? ? fileName: '../[path][name].[ext]'
? ? ? ? ? ? },
? ? ? ? ? ? pngquant: ({quality: '80-100'}),
? ? ? ? ? ? plugins: [
? ? ? ? ? ? ? ? imageminMozjpeg({quality: 80, progressive: true}),
? ? ? ? ? ? ? ? imageminSvgo()
? ? ? ? ? ? ],
? ? ? ? ? ? jpegtran: {progressive: true}
? ? ? ? })
? ? ],
? ? module: {
? ? ? ? rules: [
? ? ? ? ? ? {
? ? ? ? ? ? ? ? test: /\.(png|jpe?g|gif|svg)$/i,
? ? ? ? ? ? ? ? use: [
? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? loader: 'file-loader',
? ? ? ? ? ? ? ? ? ? ? ? options: {
? ? ? ? ? ? ? ? ? ? ? ? ? ? name: '../[path][name].[ext]'
? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ]
? ? ? ? ? ? },
? ? ? ? ]
? ? }
}
添加回答
舉報