【问题标题】:is there a way to render a React component in ERB using <Component/>?有没有办法使用 <Component/> 在 ERB 中渲染 React 组件?
【发布时间】:2018-07-03 20:32:16
【问题描述】:

而不是创建一个带有 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 做到这一点,但反应似乎不可能。

【问题讨论】:

  • 不,因为 JSX 是 Javascript,而不是 HTML。

标签: javascript ruby-on-rails ruby reactjs


【解决方案1】:

试试react on rails。这是您最接近的地方。它为您提供了一个 react_component 视图助手,允许您呈现以前注册的组件。

【讨论】:

  • 谢谢,但这实际上是我要迁移的地方
【解决方案2】:

如果您使用 react-router 之类的东西并定义了一个路由 jsx 文件,那么您可以简单地在您的 erb 文件中执行 &lt;div id="react-router"&gt;&lt;/div&gt; 不确定这是否是您要查找的内容。

【讨论】:

    猜你喜欢
    • 2023-03-29
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    • 2020-11-20
    • 1970-01-01
    • 2020-08-12
    • 2021-01-26
    • 1970-01-01
    相关资源
    最近更新 更多