0

我正在使用现成的主题,并希望在将其发布到生产之前摆脱所有不必要的 css。我设置了 Grunt 和 PurgeCSS 来执行此操作,但它只处理选择性文件(在每次运行时随机处理)并保持其他文件不变。

这是我的 Gruntfile:

module.exports = function (grunt) {
  grunt.initConfig({
    clean: {
      build: {
        src: ["build"],
      },
    },
    copy: {
      build: {
        cwd: "src",
        src: ["**/*"],
        dest: "build",
        expand: true,
      },
    },
    purgecss: {
      build: {
        options: {
          content: ["build/**/*.html"],
        },
        files: {
          "build/css/style.css": ["build/css/style.css"],
          "build/css/responsive.css": ["build/css/responsive.css"],
          "build/css/font-icons.min.css": ["build/css/font-icons.min.css"],
          "build/css/theme-vendors.min.css": ["build/css/theme-vendors.min.css"],
        },
      },
    },
    stripCssComments: {
      build: {
        files: {
          "build/css/style.css": "build/css/style.css",
          "build/css/responsive.css": "build/css/responsive.css",
          "build/css/font-icons.min.css": "build/css/font-icons.min.css",
        },
      },
      options: {
        preserve: false,
      },
    },
  });
  grunt.loadNpmTasks("grunt-contrib-clean");
  grunt.loadNpmTasks("grunt-contrib-copy");
  grunt.loadNpmTasks("grunt-purgecss");
  grunt.loadNpmTasks("grunt-strip-css-comments");
  grunt.registerTask("default", [
    "clean:build",
    "copy",
    "purgecss",
    "stripCssComments",
  ]);
};

难道我做错了什么?我希望它在每次运行时从所有指定文件中删除不必要的 css

4

0 回答 0