grunt:用uglifyjs uglify css文件

Ric*_*ard 29 gruntjs

我正在使用grunt来uglify我的静态文件(使用grunt v0.4.0).我已将其配置为uglify一个文件,但我无法弄清楚如何让它做两个文件 - 尽管阅读了这个问题用法示例.

这是我目前的情况:

uglify: {
  options: {
    banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n',
    mangle: true
  },
  build: {
    src: 'dist/main.js',
    dest: 'dist/main.min.js'
  }
}
Run Code Online (Sandbox Code Playgroud)

我也想丑化dist/main.css.我该如何添加它?我按照用法示例尝试了这个:

uglify: {
  options: {
    banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n',
    mangle: true
  },
  build: {
    files: {
      'dist/main.min.js': ['dist/main.js'],
      'dist/main.min.css': ['dist/main.css']
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

但这给了我以下错误:

WARN: ERROR: Unexpected token: punc ({) [dist/main.css:7,41]
Warning: Uglification failed. Use --force to continue.
Aborted due to warnings.
Run Code Online (Sandbox Code Playgroud)

好像它在第一次窒息{- 为什么会发生这种情况?它是有效的CSS.

drz*_*zax 60

Uglify适用于Javascript而非CSS.尝试使用http://github.com/gruntjs/grunt-contrib-cssmin使用Grunt缩小CSS.


jch*_*ell 5

Uglify仅适用于Javascript,但YUI Compressor可以同时执行Javascript和CSS:YUI Compressor


xud*_*dre 5

有一个类似的解决方案叫做UglifyCSS ( https://github.com/fmarcia/UglifyCSS ):

shell: uglifycss "source.css" > "output.min.css"
Run Code Online (Sandbox Code Playgroud)

Where 的行为很像UglifyJS