【问题标题】:Using Node during asset compilation rails on heroku在 heroku 上的资产编译 rails 期间使用 Node
【发布时间】:2023-03-31 06:17:01
【问题描述】:

有人知道旧节点版本关于在 Heroku 上使用 https://github.com/dockyard/es6_module_transpiler-rails 的问题是否已解决。

https://gist.github.com/bcardarella/7384208

复制要点:

我一直在与 Tilde 的 Peter Wagenet 合作以获得支持 使用 Rails 应用程序在 Heroku 上使用 Ember Appkit。先介绍一下背景:

Ember Appkit 将转译 ES6 模块以用作 AMD。为此我 编写了使用 Node 和 Square 的 es6_module_transpiler-rails gem es6-module-transpiler 包。该软件包利用 Esprima 解析。旧版本中存在保留关键字的问题 JavaScript 运行时没有被正确引用: https://code.google.com/p/esprima/issues/detail?id=469

在我们的本地机器上一切正常,但转译却不行 因为我们的 Node 版本是最新的,所以被淘汰了。然而,当我们 部署到 Heroku 和 Rails 尝试预编译其资产 Heroku 使用的 Node 版本已过期。基于一些 研究显示,默认情况下 Heroku 使用的是 Node v0.4.7,即 从 2011 年 4 月开始。很容易迫使 Heroku 使用 more up to 节点的日期版本: https://devcenter.heroku.com/articles/nodejs-support#versions 然而 目前还不清楚这是否会与 Rails 应用程序并行运行 用于预编译。此外,我认为不合理 要求 Rails 开发人员将 Heroku 的 Node 配置代码包含在 应用程序。

我恭敬地请求 Node for Rails 的默认版本 资产编译升级到更新的版本。

【问题讨论】:

    标签: javascript ruby-on-rails node.js heroku


    【解决方案1】:

    我们通过使用多 buildpack 并在您的应用程序中定义 package.json 来支持通过节点进行集成。这是公关https://github.com/heroku/heroku-buildpack-ruby/pull/245

    确保 nodejs 在 .buildpacks 文件中首先出现,然后您可以获得所需的任何版本的 Node。

    【讨论】:

      猜你喜欢
      • 2011-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-26
      • 2013-03-26
      相关资源
      最近更新 更多