【问题标题】:Rails JavaScript error in production: 'Invalid left-hand side in assignment'生产中的 Rails JavaScript 错误:“分配中的左侧无效”
【发布时间】:2017-03-01 12:23:43
【问题描述】:

我的 Rails 5 应用在开发中运行良好,但在生产中抛出 JS 错误:

未捕获的 ReferenceError:分配中的左侧无效

这个错误不会发生在我的开发机器上,只发生在生产服务器上。 javascript 在生产中被预编译为一行,所以我看不出问题出在哪里。

我尝试在我的开发机器上运行rake assets:precompile --trace RAILS_ENV=production,但它不会在那里抛出任何错误。

关于如何尝试调试的任何线索?

【问题讨论】:

  • 这个错误出现在哪里?

标签: javascript ruby-on-rails asset-pipeline


【解决方案1】:

===更新===

这是Uglifier 3.1.0 (#110) 的bug,作者已经发布了3.1.1 跑吧

bundle update

安装最新版本,您的项目应该在生产环境中找到。

===原帖===

我也有同样的问题,所以检查了我最近所做的并成功地缩小到一个 gem:uglifier。 似乎 uglifier 3.1.0 导致了这个问题,所以我回滚到 3.0.4

在 Gemfile 中,更改以下内容

gem 'uglifier', '>= 1.3.0'

到:

gem 'uglifier', '~> 3.0.4'

它应该可以工作。

我还没有深入研究导致此问题的原因...

【讨论】:

  • 谢谢。有关 github 问题,请参见我上面的答案。
【解决方案2】:

发现问题。是用uglifier。

https://github.com/lautis/uglifier/issues/110

升级到 3.1.1 应该可以解决它。

【讨论】:

    猜你喜欢
    • 2020-08-02
    • 2013-10-01
    • 1970-01-01
    • 2018-10-02
    • 2019-09-18
    • 1970-01-01
    • 1970-01-01
    • 2019-08-23
    • 2023-04-01
    相关资源
    最近更新 更多