有没有办法使用<component>在ERB中呈现React组件?

时间:2018-01-24 17:37:14

标签: javascript ruby-on-rails ruby reactjs

而不是使用id创建div并使用ReactDOM来呈现它。例如,我目前正在这样做:

index.html.erb

<div id="home-page"></div>

HomePage.js

import React from 'react'
import ReactDOM from 'react-dom'
import Component1 from './components/Component1'

class HomePage extends React.Component {
  ...
  render() {
    <Component1/>
    <Component2/>
  }
}

但更愿意这样做:

index.html.erb

<Component1/>
<Component2/>

这可能吗?我可以用Vue.js做到这一点,但看起来似乎不可能做出反应。

2 个答案:

答案 0 :(得分:0)

尝试使用react on rails。这是你最接近的。它为您提供了一个react_component视图助手,允许您渲染以前注册的组件。

答案 1 :(得分:0)

如果您使用类似react-router的内容并定义路由jsx文件,那么您只需在erb文件中执行<div id="react-router"></div>,不确定这是否是您要查找的内容。