### 実現したいこと
railsのviewでreact.jsがレンダリングした値をrailsが扱えるように取得したい。
### 前提
Rails: 8.0.2
react: "19.2.0"
react-dom: "19.2.0"
railsのviewでreactが取得した値を以下のように表示させました。
(Rails)
「app/view/layouts/application.html.erb」
<%= javascript_include_tag "search01", "data-turbo-track": "reload", type: "module" %> に、search01を指定。
「app/view/search.html.erb」
略
<div id="search01"></div> ①
略
を、記載。
(React)
「app/javascript/search01.jsx」
const root = createRoot(document.getElementById('search01')); ここに"search01"を記載し ① に正常に値がレンダリングされるのを確認しました。 ※値は、reactが返した単に数値です。
### 今回実現したいこと・発生している問題・エラーメッセージ
やりたいことは、
①でWeb上に表示された値を以下view内のform_withで
controller: search
action: calc01
に送信する。
「app/view/search.html.erb」
略
<div id="search01" ></div>
略
<%= form_with url: search_calc01_path, method: :get do |f| %>
<%= hidden_field_tag :tmp01, nil, {id: :search01} %> ②(この書式自体が?!になっている)
<%= hidden_field_tag :tmp02, "999.999" %> ③(テストとして臨時記載)
<%= f.submit "送信" %>
<% end %>
略
※ tmp01、tmp02はここだけの名前
### 試したこと・結果
上記、form_withで送信すると、テストで臨時記載してある③は正常に送信されていることは確認しているが、
②は以下ログのように取得できていない。
Parameters: {"tmp01" => "", "tmp02" => "999.999", "commit" => "送信"}
(推測・結論)
(1)②の書式が間違っている?!何かが足りない?!、{id: :search01}でhtml要素は指定出来ない?!
(2)そもそもフロントエンドとバックエンドではデータ送信レイヤーが異なり仕組みが元来ない。
ただ、自環境のreactは、railsと別ポートではなく、railsプロジェクト内で動作してるからなんとかなるのかも?!
とタカをくくっています。
** ※ ご教授宜しくお願い致します!!!**
### 補足情報
次に、
stimulusのcontrollerとして動作させようと思っておりますが既存資産でまず動作させたいです。
どうぞ宜しくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2025/11/11 07:46