如何在create react app中压缩构建文件而不弹出?

时间:2020-08-15 20:54:34

标签: javascript reactjs create-react-app

我试图弄清楚如何最佳地优化构建文件,并遇到了压缩文本文件(如js和css)的想法。根据我所见,每篇文章都假设您有权访问webpack配置文件,或者您已退出CRA。我不想。

所以我在我的package.json文件中添加了一个后构建脚本:

"scripts": {
    "build": "npm run build --prefix client",
    "prod-compress": "gzip client/build/static/js/*.js && gzip client/build/static/css/*.css",

这将导致/client/build/static/js/client/build/static/css文件夹如下所示:

enter image description here enter image description here

然后我进入我的app.js文件并添加以下代码:

app.get('*.js', function(req, res, next) {
    req.url = req.url + '.gz';
    res.set('Content-Encoding', 'gzip');
    res.set('Content-Type', 'text/javascript');
    next();
});

app.get('*.css', function(req, res, next) {
    req.url = req.url + '.gz';
    res.set('Content-Encoding', 'gzip');
    res.set('Content-Type', 'text/css');
    next();
});

如果我了解正确的操作,则f / e /client/public/index.html文件仍将引用常规的.js文件。但是,当从服务器请求文件时,它将以.js.gz文件作为响应。

但是,当我压缩文件时,整个站点变成空白,就像找不到任何可用的东西一样。 enter image description here

0 个答案:

没有答案