我有一个react-rails项目(ES5),其中我试图从React Component.js.jsx中的_form.html.erb文件渲染表单......我真的不知道如何处理这种情况,如果有可能的话。我的项目中有很多形式,但都被渲染为传统的 <%= render "samples/new_sample_form" %>
在我的 html.erb View 中。但是,现在我位于 React 组件内,并尝试将 Rails 表单拉入 js.jsx 文件中。我尝试创建变量 var sampleForm = "<%= render 'samples/new_sample_form' %>"
但这不起作用,只给我文本形式的路径,而不做任何事情。
那么 - 是否可以做我正在尝试的事情,如果可以的话...如何做?谢谢。
Code in js.jsx -> var taskForm = "<%= render 'tasks/new_task_form' %>"
-> My result
最佳答案
为了使其工作,您必须通过 ERB 引擎运行该文件。您可以尝试重命名 React 文件 some_component.js.jsx.erb
,但这并不是真正的“React”方式。
您可能应该完全摆脱表单并将其重建为 React 组件。然后,您可以使用 Ruby 将 props 传递给您的组件。所以在你看来:
<%= react_component 'YourFormComponent', {prop1: 'prop1_value', prop2: 'prop2_value'} %>
关于ruby-on-rails - React js.jsx 中的 React Rails : Rendering an html. erb 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46673261/