【问题标题】:Error Installing react-rails with Rails 5 beta.3使用 Rails 5 beta.3 安装 react-rails 时出错
【发布时间】:2016-04-02 13:46:14
【问题描述】:
使用 Ruby 2.2.3 运行新安装的 Rails 5 beta 3。在 gem 文件中添加 react-rails 1.6.0 然后捆绑安装。
然后安装rails s。然后报错:
Users/sylar/.rvm/gems/ruby-2.2.3/bundler/gems/rails-442207387e62/railties/lib/rails/railtie/configuration.rb:95:in method_missing': undefined methodassets' for # (NoMethodError )
这是 react-rails 问题还是 rails 5 本身?在 Rails 4.2.5 中工作正常。
【问题讨论】:
标签:
ruby-on-rails
react-rails
【解决方案1】:
似乎 rails 5 --api 已将 require "sprockets/railtie" 注释掉。未注释,一切都很好。这是在config/application.rb
中找到的
【解决方案2】:
当您发布您的问题时,这不是一个选项,但如果您没有设法让 react-rails 工作(以及其他任何有同样问题的人)......我看到了同样的错误,但能够通过以下步骤修复它:
-
将 Rails 5 beta 3 更新到发布版本,并在 Gemfile 中包含 react-rails:
gem 'rails', '~> 5.0.0'
gem 'react-rails' # use whatever version you want here.
-
在项目根行中运行这些终端命令:
bundle install
rails g react:install
此时,在运行 rails s 时出现了一个新错误——然后,一旦我修复了该错误,就会出现一个浏览器错误。我可以通过几个额外的步骤解决所有问题:
-
将以下内容添加到 app/assets/javascripts/application.js。如果您使用的是 require_tree ,请确保将其放在此行之前:
//= require react
//= require react_ujs
//= require components
//= require_tree .
创建 app/assets/javascripts/components/components.js。
-
将此行添加到 config/assets.rb:
Rails.application.config.assets.paths << "#{Rails.root}/app/assets/javascripts/components"
此时我的 react-rails 正在工作。
希望对您有所帮助。