我有一个react-rails项目(ES5),其中我试图从React Component.js.jsx中的_form.html.erb文件中呈现一个表单...我真的迷失了如何接近这种情况,如果有可能的话。我的项目中有很多表单,但在html.erb视图中,所有表单都以传统的<%= render "samples/new_sample_form" %>
方式呈现。但是,现在我在一个React组件中,并试图将我的Rails表单拉入js.jsx文件。我已经尝试创建一个变量var sampleForm = "<%= render 'samples/new_sample_form' %>"
,但这不起作用,只给了我作为文本的路径而没有做任何事情。
那么 - 是否有可能做我正在尝试的事情,如果是这样......怎么样?感谢。
Code in js.jsx - &gt; var taskForm = "<%= render 'tasks/new_task_form' %>"
- &gt; My result
答案 0 :(得分:1)
为了使其工作,您必须通过ERB引擎运行该文件。你可以尝试重命名你的React文件some_component.js.jsx.erb
,但这不是真正的“React”方式。
你应该完全摆脱你的形式并将其重建为React组件。然后,您可以使用Ruby将props传递给组件。所以在你看来:
<%= react_component 'YourFormComponent', {prop1: 'prop1_value', prop2: 'prop2_value'} %>