Grunt,css 分钟连接并缩小所有 css

Grunt, css min to concat and minify all css

我有一堆来自我正在使用的插件和单独样式表的各种 css,我正在尝试构建一个任务来组合和缩小所有这些。现在我正在尝试用 css 分钟来完成此操作,我不确定我是否走在正确的道路上,因为这是我第一次尝试这样做,但这是我正在尝试的。

cssmin: {
      target: {
        files: {
            'css/output.css': ['css/*.css', 'css/*.min.css']
        },
        files: [{
          expand: true,
          cwd: 'css',
          src: ['css/output.css'],
          dest: 'build/css',
          ext: '.min.css'
        }]
      }
    }

我的想法是,它将把我的 css 文件夹中的所有 css 和 min.css 文件合并成 1 个 output.css 然后缩小 build/css 作为 min.css 文件。我不太确定这是否是假设的工作方式,但这是我第一次尝试这样做。基本思想是将所有内容合并并缩小到我任务底部的 1 个文件中(在我添加自动前缀并使用 uncss 去除引导程序之后)。我将不胜感激任何指导,这是正确的方向吗?这似乎无法正常工作,因此非常感谢您的帮助。

感谢阅读!

我不确定...但这对我有用,并且只需要在我的 grunt.registerTask 代码行中包含 cssmin 任务。它缩小了我所有的自动前缀 .css,除了已经缩小的版本,并将它们组合成一个大的缩小样式表。希望对你有帮助^^

cssmin: {
  minify: {
    files: [{
      expand: true,
      cwd: 'src/styles',
      src: ['**/*.css', '!**/*.min.css'],
      dest: 'public/assets/styles',
      ext: '.min.css'
    }]
  },
  options: {
    shorthandCompacting: false,
    roundingPrecision: -1
  },
  combine: {
    files: {
      'public/assets/styles/style.css': ['!public/assets/styles/**/*.min.css', 'public/assets/styles/**/*.css']
    }
  }
}

minify 任务不是必需的。当您连接多个文件时,cssmin 会自动缩小内容。

cssmin: {
  options: {
    shorthandCompacting: false,
    roundingPrecision: -1
  },
  combine: {
    files: {
      'css/output.min.css': ['css/*.css', '!css/*.min.css']
    }
  }
}