使用erb和Ruby块语法来实现JSX集成

在我的app/assets/javascripts/components/navbar.js.jsx.erb我可以在我的组件的render函数中编写这样的东西(我正在使用gem react-rails ):

 class Navbar extends React.Component { render() { return( 
  •  
); } }

一切正常,除了link_to with block,这给了我一个语法错误:

语法错误,意外的keyword_end,期待’)’

如果我删除该块一切正常。 任何的想法?

PS:要使用Rails助手,我在config/initializers/assets.rb添加了这些行:

 # Include Rails helpers in the assets pipeline Rails.application.config.assets.configure do |env| env.context_class.class_eval do include ActionView::Helpers include Rails.application.routes.url_helpers end end 

我认为当你有一个块跟随时,你需要围绕参数括号

在github react-rails页面上有人回答了这个问题,请看这条评论: https : //github.com/reactjs/react-rails/issues/211#issuecomment-178119941