grunt imagemin 不会移动未优化的图像
grunt imagemin doesn't move unoptimized images
我刚刚在我正在进行的项目中注意到这一点:
假设您有大量图像要压缩,它们位于 images-src
文件夹中。压缩后,它们会进入 images
文件夹,这些是您在项目中使用的文件夹。
有些图像可能不需要任何优化,我注意到它们保留在源文件夹中,不会移动 images
,但这会带来问题,因为现在,有些图像是不见了,我什至不知道具体是哪些。
这是一个错误还是我遗漏了什么?
我的配置非常简单:
imagemin: {
dynamic: {
files: [{
expand: true, // Enable dynamic expansion
cwd: '_src/images/', // source images (not compressed)
src: ['**/*.{png,jpg,gif,svg}'], // Actual patterns to match
dest: '_dev/images/' // Destination of compressed files
}]
}
}, //end imagemin
如何将未优化的图像从源移动到 dist?
您可以在移动目标中所有未优化的图像后立即执行复制任务。
使用一些过滤器来避免覆盖已经在目标中的压缩图像。
copy: {
unoptimizedImage: {
expand: true,
cwd: '_src/images/',
src: ['**/*.{png,jpg,gif,svg}'],
dest: '_dev/images/'
// Copy if file does not exist.
filter: function (filepath) {
// NPM load file path module.
var path = require('path');
// Construct the destination file path.
var dest = path.join(
grunt.config('copy.main.dest'),
path.basename(filepath)
);
// Return false if the file exists.
return !(grunt.file.exists(dest));
},
},
},
我刚刚在我正在进行的项目中注意到这一点:
假设您有大量图像要压缩,它们位于 images-src
文件夹中。压缩后,它们会进入 images
文件夹,这些是您在项目中使用的文件夹。
有些图像可能不需要任何优化,我注意到它们保留在源文件夹中,不会移动 images
,但这会带来问题,因为现在,有些图像是不见了,我什至不知道具体是哪些。
这是一个错误还是我遗漏了什么?
我的配置非常简单:
imagemin: {
dynamic: {
files: [{
expand: true, // Enable dynamic expansion
cwd: '_src/images/', // source images (not compressed)
src: ['**/*.{png,jpg,gif,svg}'], // Actual patterns to match
dest: '_dev/images/' // Destination of compressed files
}]
}
}, //end imagemin
如何将未优化的图像从源移动到 dist?
您可以在移动目标中所有未优化的图像后立即执行复制任务。
使用一些过滤器来避免覆盖已经在目标中的压缩图像。
copy: {
unoptimizedImage: {
expand: true,
cwd: '_src/images/',
src: ['**/*.{png,jpg,gif,svg}'],
dest: '_dev/images/'
// Copy if file does not exist.
filter: function (filepath) {
// NPM load file path module.
var path = require('path');
// Construct the destination file path.
var dest = path.join(
grunt.config('copy.main.dest'),
path.basename(filepath)
);
// Return false if the file exists.
return !(grunt.file.exists(dest));
},
},
},