gpt4 book ai didi

gruntjs - Grunt - 如何查看和同步文件的删除

转载 作者:行者123 更新时间:2023-12-03 21:45:13 25 4
gpt4 key购买 nike

我是 Grunt 的新用户。目前我有一个文件夹 static_src/img ,其中包含图像源文件(.psd)和图像文件(.png、.jpg 等)。此文件夹不公开。相反,我想将仅图像文件的更改同步到另一个公用文件夹 static/img

问题是 - 当我在 static_src/img 中添加/更改图像文件时效果很好,但我不知道如何在删除文件时同步更改。 grunt-contrib-watch 可以检测到 static_src/img 中的删除,但是我不知道如何删除 static/img 中的文件。我尝试了 grunt-contrib-clean,但它似乎对我不起作用,可能是我使用不当。

我的 Gruntfile.js 是:

module.exports = function(grunt){
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
copy: {
dev: {
files: [
{expand: true, cwd: 'static_src/img/', src:['**/*.{png,jpg,gif}'], dest: 'static/img/'}
]
}
},
clean: {
dev: {
src: ['static_src/img/**/*.png']
}
},
watch: {
copy: {
files: ['static_src/img/**/*.{png,jpg,gif}'],
tasks: ['copy'],
options: {
event: ['added', 'changed'],
}
},
remove: {
files: ['static_src/img/**/*.{png,jpg,gif}'],
tasks: ['clean'],
options: {
event: ['deleted']
}
}
}
});

grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-watch');
};

那么如何在 grunt-contrib-watch 任务中删除特定文件呢?谢谢你的帮助!

最佳答案

对于已删除的事件,您可以删除static/img中的所有文件,并将static_src/img中剩余的文件复制到static/img中。

module.exports = function(grunt){
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
copy: {
dev: {
files: [
{expand: true, cwd: 'static_src/img/', src:['**/*.{png,jpg,gif}'], dest: 'static/img/'}
]
}
},
clean: {
dev: {
src: ['static/img/**/*.{png,jpg,gif}'] // Changed this from static_src to static
}
},
watch: {
copy: {
files: ['static_src/img/**/*.{png,jpg,gif}'],
tasks: ['copy'],
options: {
event: ['added', 'changed'],
}
},
remove: {
files: ['static_src/img/**/*.{png,jpg,gif}'],
tasks: ['clean', 'copy'], // Added copy task after clean
options: {
event: ['deleted']
}
}
}
});

grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-watch');
};

我猜这可能与您希望删除特定文件的方式不同,但可以按预期工作。

关于gruntjs - Grunt - 如何查看和同步文件的删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18696148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com