検索

ホームページ  >  に質問  >  本文

onClick を使用して React Hooks にデータを渡す方法

<p>blogItem がクリックされたときに、<code>blogItem.js</code> コンポーネントから <code>blogDetails.js</code> コンポーネントにデータを渡すにはどうすればよいですか?ただし、blogItem コンポーネントは Home.js コンポーネントにインポートされます。クリックアクションをどこに追加すればよいか教えてください。誰か例を共有できますか? </p> <p>CodeSandboX リンク https://codesandbox.io/s/gallant-water-5bmueq?file=/src/blogItem.js:0-1876</p> <pre class="brush:php;toolbar:false;">// App.js import { BrowserRouter, Route, Routes, Switch } from "react-router-dom"; ホームを「./src/Home」からインポートします。 BlogItem を「./src/blogItem」からインポートします。 関数 App() { 戻る ( <div className="アプリ"> <ブラウザルーター> <ルート> <ルートパス="/"要素={<Home />}></Route> <ルート パス="/blogItem" 要素={<BlogItem />}></Route> </ルート> </ブラウザルーター> </div> ); } デフォルトのアプリをエクスポートします。 //ホーム.js インポート「./styles.css」; import React, { useState, useEffect, useCallback } from "react"; BlogItem を「./blogItem」からインポートします。 const ホーム = (小道具) => { const [blogItem, setBlogItem] = useState(props); useEffect(() => { setBlogItem(props); }, [小道具]); 戻る ( <div id="アプリ"> <ブログアイテム /> </div> ); }; デフォルトのホームをエクスポートします。 // BlogItem.js インポート「./styles.css」; import React, { useState, useEffect, useCallback } from "react"; const blogData = [ { ID:1、 日付: 「2023 年 1 月 25 日」、 写真: 「https://picsum.photos/80」、 見出し: 「Cypress セットアップ ブログ」、 ブログ詳細: "最適な見出しをここに追加しました。最も関連性の高いデータがここに追加されました。史上最高。いつもここでプレーするのは得策ではないだろう。」 }、 { ID:2、 日付: 「2022 年 1 月 22 日」、 写真: 「https://picsum.photos/80」、 見出し: "反応状態の詳細"、 ブログ詳細: "最適な見出しをここに追加しました。最も関連性の高いデータがここに追加されました。史上最高。いつもここでプレーするのは得策ではないだろう。」 } ]; const BlogItem = ({ id, 日付, 写真, 見出し, blogDetails }) => { const [searchResults, setSearchResults] = useState(blogData); const [state, setState] = useState({ id, 日付, 写真, 見出し, blogDetails }); const 列 = () => ( <div className="blogItems"> <div className="行"> <div className="ブログエリア"> {searchResults.map(({ id, 日付, 写真, 見出し, blogDetails }) => ( <a key={id}> <div className="blogImageSection"> idddd <p>ブログの詳細</p> <前> <code>const データ = []; data.push("サッカー");</code> </pre> </div> </div> </div> </div> ); }; デフォルトの BlogDetails をエクスポート;</pre></p>
P粉615886660P粉615886660461日前564

全員に返信(1)返信します

  • P粉043566314

    P粉0435663142023-09-01 00:17:10

    まず、index.js ファイルに browserRouter を作成し、それを app.js ファイルから削除して、BlogDetails を作成します。コンポーネントルートを作成します:

    リーリー

    次に、「react-router-dom」パッケージをインストールする必要があります。

    リーリー

    #useNavigateBlogItem.js ファイルにインポートします: リーリー

    これで、クリックして

    /blogDetails にリダイレクトする 要素 onClick を追加できます。例: リーリー

    最後に、

    BlogDetails.js ファイル内: リーリー

    渡されたデータには次のようにアクセスできます:

    リーリー

    返事
    0
  • キャンセル返事