(React on Rails)引擎“节点”与此模块不兼容。 预期版本“…”

对于那些熟悉反应在轨道gem,或更一般地说,纱线:

就在今天,我通过Homebrew将我的Node版本更新到了8.8.1。 现在,当我尝试运行bundle && yarn && foreman start -f Procfile.dev (或者只是安装纱线)时,我得到以下消息:

error react-webpack-rails-tutorial@0.0.1:引擎“节点”与此模块不兼容。 预期版本“5.10.0”。

错误发现不兼容的模块

info有关此命令的文档,请访问https://yarnpkg.com/en/docs/cli/install 。

这可能是我遇到的一个非常简单的问题,但是我经过几个小时的debugging就无法修复它。

我尝试手动更新我的节点版本package.json是我的电脑(似乎并没有生效),通过自制软件降级到5.10.0(但无法),甚至升级到最新的版本这也意味着安装webpack的gem。

不pipe我做了什么,我的本地服务器启动(1bundle && yarn && foreman start -f Procfile.dev1)仍然导致上面的错误。 对这个可怜的灵魂有什么想法?

对于遇到同样问题的任何人,我还没有find解决scheme的潜在问题,但我find了一个临时的解决方法。

只需运行

 bundle && yarn --ignore-engines && foreman start -f Procfile.dev 

代替

 bundle && yarn && foreman start -f Procfile.dev 

我希望这可以帮助别人,可能发现自己陷入了相同的情况!

我从react-webpack-rails-tutorial github页面给你提供这个检查列表

基本的演示设置

  1. 确保你有节点安装! 我们build议nvm,使用v6.0或更高版本的节点。 看到这篇文章更新和使用nvm。

  2. git clone git@github.com:shakacode / react-webpack-rails-tutorial.git cd react-webpack-rails-tutorial

  3. 检查你有Ruby 2.3.0或更高版本
  4. 检查您使用的是正确版本的节点。 运行nvm列表来检查。 使用5.5或更高。
  5. 检查你是否安装了Postgres。 运行哪些postgres来检查。 使用9.4或更高。
  6. 检查你是否安装了qmake。 运行哪个qmake来检查。 如果丢失,请按照以下说明操作:安装Qt并编译capybara-webkit
  7. 检查你是否安装了Redis。 运行哪个redis服务器来检查。 如果丢失,请使用自制软件(brew install redis)进行安装,或者按照这些说明操作。
  8. 捆绑安装
  9. 酿造安装纱线
  10. 耙db:设置
  11. 工头开始-f Procfile.hot
  12. 使用HOT RELOADING为Rails应用程序示例打开浏览器选项卡:http:// localhost:3000
  13. 尝试下面的热重新加载步骤!
  14. 工头启动-f Procfile.static
  15. 为Rails应用程序示例打开一个浏览器选项卡到http:// localhost:3000 。
  16. 当您进行更改时,您必须刷新浏览器页面。