⊗jsrtPmRtAD 32 of 47 menu

React Routerでのデータ追加

前回のレッスンでは、ローダーを準備し、 特定のルートからのデータをストアから アンロードしました。さて、私たちの アプリケーションを例に、新しい製品を 追加し、そのデータをストアに書き込む 方法を見てみましょう。

ファイル root.jsx を開き、 レイアウトに新しい製品を追加するための ボタンを nav の前に追加しましょう。 フォームタグで囲みます。また、このボタンと リストをもう一つのdivで #menu を 持たせて囲みます。レイアウトは次のように なります:

return ( <div id="main"> <div id="menu"> <form method="post"> <button type="submit">製品を追加</button> </form> {products.length ? ( <nav> {products.map((product) => ( <Link key={product.id} to={`products/${product.id}`}> {product.name ? product.name : <i>名前なし</i>} </Link> ))} </nav> ) : ( <p> <i>製品がありません...</i> </p> )} </div> <div id="product"> <Outlet /> </div> </div> );

開発者パネルの 'ネットワーク' タブを開き、私たちのボタンをクリック すると、サーバーへのエラーリクエストが 表示されます。React Routerを使用して、 再度クライアントサイドのルーティングを 活用し、サーバーへのリクエストを 排除します。

そのために、タグ form を React Routerのコンポーネント Form に変更しましょう。まず Form の インポートを追加します:

import { Form } from 'react-router-dom';

次に、コードスニペット内の form タグを置き換えます:

<Form method="post"> <button type="submit">製品を追加</button> </Form>

アプリケーションをリロードし、もう一度 開発者パネルを確認してください。製品追加 ボタンをクリックしてみます - これでサーバー へのリクエストはなくなっています(エラーは 今のところ気にしないでください)。

前回のレッスンの課題で作成した アプリケーションを使用してください。 レッスンの資料を参考に、関数 Root のマークアップを修正し、 form タグ内に学生を追加する ボタンを追加してください。ボタンを クリックしたときにサーバーへの リクエストが行われることを確認 してください。

次に、タグ form を コンポーネント Form に 置き換えてください。学生追加ボタン をクリックしたときにサーバーへの リクエストが送信されないことを 確認してください。

日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否