【问题标题】:Assets compression in Rails 6 with Webpack not workingRails 6 中的资产压缩与 Webpack 不工作
【发布时间】:2020-07-22 21:10:41
【问题描述】:

我将 config/webpack/production.js 更改为:

process.env.NODE_ENV = process.env.NODE_ENV || 'production'
const CompressionPlugin = require('compression-webpack-plugin');

const environment = require('./environment')

module.exports = environment.toWebpackConfig()

module.exports.plugins.push(
    new CompressionPlugin({
        asset: "[path].gz[query]",
        algorithm: "gzip",
        test: /\.(js|css)$/,
        threshold: 10240,
        minRatio: 0.8
    })
);

但这并没有压缩我资产中的任何内容。 我是否以错误的方式添加插件或遗漏了什么? 谢谢。

【问题讨论】:

    标签: webpack ruby-on-rails-6


    【解决方案1】:

    不确定 webpacker 的哪一部分缩小了我的代码,但问题是我手动运行 webpack 但不是在生产模式下,这忽略了与压缩相关的任何内容。 我添加到我的 config/webpack/production.js:

    module.exports = environment.toWebpackConfig()
    
    module.exports.optimization = {
        minimize: true,
        minimizer: new UglifyJsPlugin({
            test: /\.js$/,
            exclude: /node_modules/,
            sourceMap: true,
            uglifyOptions: {
                compress: {},
                mangle: true,
            }
        })
    }
    

    仅此一项并没有解决问题,只有在我添加了生产模式标志后,压缩才开始发生:

    bin/webpack  --mode production
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-13
      • 1970-01-01
      相关资源
      最近更新 更多