我已经定义了一个 uncss grunt 任务,我想将 .min.css 添加到文件夹 /css 中的所有文件内容中,但是当我运行 grunt 命令并保存我的 css 更改(正在查看任务)时,我收到以下错误在控制台中:
Unable to write "css" file (Error code: EISDIR
这是我的 cssmin 任务:
// Cssmin task config
cssmin: {
target: {
files: [{
src: ['css/*.css', 'css/!*.min.css'],
dest: 'css',
}]
}
}
这是我完整的 Gruntfile.js:
//Gruntfile.js
module.exports = function (grunt) {
grunt.initConfig({
// Watch task config con Sass
watch: {
sass: {
files: "scss/*.scss",
tasks: ['sass']
},
cssmin: {
files: "css/*.css",
tasks: ['cssmin']
}
},
// Sass task config
sass: {
dev: {
files: {
// fichero destino // fichero .scss
"css/custom.css" : "scss/custom.scss"
}
}
},
// BrowserSync task config
browserSync: {
default_options: {
bsFiles: {
src: [
"css/*.css",
"js/*.js",
"*.html"
]
},
options: {
watchTask: true,
proxy: "tutorialmaterialize.dev"
}
}
},
// UnCSS task config
uncss: {
dist: {
options: {
//Estilos que queremos limpiar
stylesheets : ['css/materialize.min.css'],
//Estilos que no queremos limpiar
ignoreSheets: [/custom.css/],
},
files: {
//Archivo css de salida //Scanea las clases, ids, etc de este html
'css/materialize.min.css': ['index.html']
}
}
},
// Cssmin task config
cssmin: {
target: {
files: [{
src: ['css/*.css', 'css/!*.min.css'],
dest: 'css',
}]
}
}
});
//Cargamos los grunt plugins
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.loadNpmTasks('grunt-browser-sync');
grunt.loadNpmTasks('grunt-uncss');
grunt.loadNpmTasks('grunt-contrib-cssmin');
//Tarea por defecto
grunt.registerTask('default', ['browserSync', 'watch']);
};
最后这是我的项目结构:
materialize-css/
|--css/
| |--materialize.min.css
| |--custom.css
|
|--img/
|
|--fonts/
| |--material-design-icons
| |--roboto
|
|--js/
| |--materialize.min.js
|
|--index.html
我怎样才能解决这个问题?