0

使用 Ruby 2.2.3 运行新安装的 Rails 5 beta 3。在 gem 文件中添加react-rails 1.6.0然后捆绑安装。

然后安装rails s。然后报错:

用户/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 中工作正常。

4

2 回答 2

0

当您发布您的问题时,这不是一个选项,但如果您没有设法让 react-rails 工作(以及其他有同样问题的人)......我看到了同样的错误,但能够修复它通过以下步骤:

  1. 将 Rails 5 beta 3 更新到发布版本,并在 Gemfile 中包含 react-rails:

    gem 'rails', '~> 5.0.0'
    gem 'react-rails' # use whatever version you want here.
    
  2. 在项目根行中运行这些终端命令:

    bundle install
    rails g react:install
    

在这一点上,运行 rails s 时出现了一个新错误——一旦我修复了它,就会出现一个浏览器错误。我可以通过几个额外的步骤来解决所有问题:

  1. 将以下内容添加到 app/assets/javascripts/application.js。如果您使用的是 require_tree ,请确保将其放在此行之前:

    //= require react
    //= require react_ujs
    //= require components
    //= require_tree .
    
  2. 创建 app/assets/javascripts/components/components.js。

  3. 将此行添加到 config/assets.rb:

    Rails.application.config.assets.paths << "#{Rails.root}/app/assets/javascripts/components"
    

在这一点上,我有 react-rails 工作。

希望这会有所帮助。

于 2016-07-19T05:18:28.033 回答
0

好像 rails 5 --api 已经require "sprockets/railtie"注释掉了。未注释,一切都很好。这是在config/application.rb

于 2016-04-02T14:52:07.733 回答