如何使用grunt-contrib-uglify来gzip js文件呢?

kee*_*eeg 8 javascript gruntjs grunt-contrib-uglify

我正在执行一项艰巨的任务:

uglify: {
    options: {
        report: 'gzip'
    },
    all: {
        expand: true,
        flatten: true,
        cwd: 'js/',
        src: ['*.js', '!*.min.js'],
        dest: 'js/min',
        ext: '.min.js'
    }

}
Run Code Online (Sandbox Code Playgroud)

在运行报告选项时,文件将压缩到一个文件中

options: {
    report: 'gzip'
}
Run Code Online (Sandbox Code Playgroud)

我看到gzip压缩时文件会明显变小,但输出文件不是gzip压缩的,它们是"缩小"报告的大小.

所以问题是,我如何配置uglify来gzip文件.或者这是一项不同任务的任务?

Ben*_*Ben 9

gzipping是网络服务器用来打包静态资产的一种技术,有助于将传输数据的大小减少一半或更多.gzip报告只是让你知道该技术将节省多少,但显然无法将文件压缩超出正常的缩小范围.如果您有兴趣,这篇文章还有一些进一步的信息:

http://betterexplained.com/articles/how-to-optimize-your-site-with-gzip-compression/

就个人而言,我会把gzip报告关闭,因为它表现不佳; 也许只有在您准备部署时才将其保存.

  • 您可以使用[grunt-contrib-compress](https://github.com/gruntjs/grunt-contrib-compress)实际gzip文件,但您需要配置服务器以返回pre-gzip文件. (4认同)