使用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