我刚刚开始使用grunt和cssmin来自动化CSS缩小过程。这在第一次工作正常,但是稍后文件内容被附加到缩小的文件而不是覆盖它,并且它的重复,文件大小越来越高!!
我的咕噜咕噜文件.js文件内容如下。
module.exports = function (grunt) {
grunt.initConfig({
// define source files and their destinations
cssmin: {
target: {
files: [{
src: ['assets/front/css/*.css', '!*.min.css'], // source files mask
dest: 'assets/front/css/', // destination folder
expand: true, // allow dynamic building
flatten: true, // remove all unnecessary nesting
ext: '.min.css' // replace .css to .min.css
}],
}
},
watch: {
css: { files: 'assets/front/css/*.css', tasks: [ 'cssmin' ] },
}
});
// load plugins
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-cssmin');
// register at least this one task
grunt.registerTask('default', [ 'cssmin', 'watch' ]);
};
请指教,我哪里犯了错误。
我相信
GitHub 上的这个问题是相关的,其中讨论了两种解决方案:
1)在缩小之前使用清洁:
clean: ['your_path/css/*.min.css', '!your_path/css/*.css'],
cssmin: {
minify: {
expand: true,
cwd: 'your_path/css/',
src: ['*.css'],
dest: 'your_path/css/',
ext: '.min.css'
}
}
2) 使用绝对文件路径而不是 */**.css 路径,如下所示:
cssmin: {
combine: {
files: {
'path/to/output.css': ['path/to/input_one.css', 'path/to/input_two.css']
}
}
}