3

uncss grunt タスクを定義しました。フォルダ /css 内のすべてのファイル コンテンツに .min.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

どうすればこれを修正できますか?

4

1 に答える 1