即使我设置了丑陋的 JS,轨道也不会缩小 JS

Rails not minifying JS even though I set uglifier

本文关键字:JS 轨道 缩小 设置      更新时间:2023-09-26

我为一个项目配置了JS和CSS压缩器,但我没有注意到Javascript文件的真正缩小。

在我的production.rb中,我有:

config.assets.css_compressor = :sass
config.assets.js_compressor = :uglifier

CSS似乎都被缩小了(不仅仅是捆绑在一起)。

我正在部署到 Heroku,我注意到它预编译了我的资产,它可能也有一些 GZip 压缩。

但是不知何故,JS文件仍然有大量的空间,变量都保留了其默认名称,所以我想它只是将所有文件捆绑在application.js中。

我有问题还是这是预期的输出?如果我想真正缩小这些文件,我应该单独配置一些东西吗?

我想要的是类似于 http://jscompress.com/中产生的东西或在缩小的jQuery版本上找到的东西。

谢谢!

我发现我正在修改一个不在资产管道上的Javascript,因此压缩/缩小不会触发。

当我修改正确的文件(加载到application.js上时,缩小正确触发[0]。

所以,永远记住修改一个Javascript文件[正在资产管道上加载],以便你触发压缩器,否则Rails将使用缓存的javascript文件,它们不会被压缩。

[0] 还要注意无效字符:UglifyJS最终失败,因为.js文件第一行的注释。但是在我删除评论(<!-- (comment) ... ->)后,它工作正常,我可以看到application.js在分期中缩小了。更多关于它的信息 这里 https://stackoverflow.com/a/35751343/135767.