⊗jsrxPmRDAL 31 of 57 menu

Reduxアプリケーションへの追加ロジックの組み込み

このレッスンでは、アプリケーションへの最後の コンポーネント追加を行います。具体的には、 製品に対して、ユーザーがその製品を注文したか、 またはその情報を読んだという「反応」を 追加していきます。

製品アプリケーションを開きましょう。 販売者名の場合と同様に、ユーザーの反応を アプリケーション内の複数の場所で表示する 必要があります。これはつまり、独立した コンポーネントが必要になるということです。 したがって、まず products フォルダ内に ファイル UserReactions.jsx を作成します。 最初に、反応の種類を定義するオブジェクトを 記述しましょう:

const reactionObj = { good: '+', soso: '+/-', bad: '-', }

次に、その下に関数の記述を開始します。 この関数には product スライスを 渡します:

export const UserReactions = ({ product }) => {}

それでは、中括弧内に UserReactions 関数の 本体を記述します。そのために、reactionObj の キーと値のペアを map を使用して繰り返し処理し、 それぞれのボタンの表示記号('+''+/-'、 または '-')と、各反応の数値(これはstore内の product から反応名を使って取得します)を取得します:

const userReactions = Object.entries(reactionObj).map(([name, image]) => { return ( <button key={name} type="button" className="reaction-button"> {image} {product.reactions[name]} </button> ) })

その後、関数のコードの最後で、 ボタン userReactions を含むマークアップを 返します:

return <div>{userReactions}</div>

さらに、index.css に少しスタイルを 追加します:

.reaction-button { margin-right: 10px; margin-bottom: 10px; }

これが少し複雑に見えても心配しないでください。 この先ですべてがはるかに明確に理解できるように なります。

受講生のアプリケーションを開いてください。 あなたのアプリケーションでは、ユーザーが 受講生の中からグループのリーダーと スポーツチームのキャプテンを選ぶ機能を 持たせます。したがって、このレッスンの 資料を学習した後、students フォルダ内に ファイル UserVotes.jsx を作成してください。 ファイルの冒頭で、2つのプロパティ (leadercaptain)を持つ オブジェクト votesObj を作成します。 値は、ボタンの表示記号として GLTC とします。

ファイル内で、オブジェクト votesObj を 定義した後、このレッスンの資料と同様に、 関数 UserVotes のコードを記述してください。

日本語
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
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否