実装したいこと
reactを使用してメニュー表を作成したい。
そのメニューを注文する際にクリックした特定の商品の名前と画像を表示させたいのですが、表示のさせ方がわかりません。
配列を作ってその中に名前、画像を入れて、クリックされたメニューの名前と画像を表示させることを考えましたが、作成方法がわかりませんでした。
また、より良い方法がある場合、そちらをご教授いただけると幸いです。
よろしくお願いいたします。
MenuAppe.js
1import React, { useState } from 'react' 2import ModalAppe from './ModalAppe'; 3 4const MenuAppe = () => { 5 const [showAppe, setShowAppe] = useState(false); 6 7 const ShowModal = () => { 8 setShowAppe(true); 9 } 10 11 return ( 12 <div> 13 <h1>appetizer</h1> 14 <div> 15 <h2>サラダ</h2> 16 <ul> 17 <li onClick={ShowModal}>Aのサラダ</li> 18 <li onClick={ShowModal}>Bのサラダ</li> 19 <li onClick={ShowModal}>Cのサラダ</li> 20 <li onClick={ShowModal}>Dのサラダ</li> 21 <li onClick={ShowModal}>Eのサラダ</li> 22 <li onClick={ShowModal}>Fのサラダ</li> 23 </ul> 24 </div> 25 <div> 26 <h2>おつまみ</h2> 27 <ul> 28 <li onClick={ShowModal}>a</li> 29 <li onClick={ShowModal}>b</li> 30 <li onClick={ShowModal}>c</li> 31 <li onClick={ShowModal}>d</li> 32 <li onClick={ShowModal}>e</li> 33 <li onClick={ShowModal}>f</li> 34 <li onClick={ShowModal}>g</li> 35 <li onClick={ShowModal}>h</li> 36 </ul> 37 </div> 38 <ModalAppe showFlag={showAppe} setShowAppe={setShowAppe} /> 39 </div> 40 ) 41} 42 43export default MenuAppe
ModalAppe.js
1import React from 'react' 2import '../App'; 3import Count from './Count'; 4 5function ModalAppe(props) { 6 const closeModal = () => { 7 props.setShowAppe(false); 8 } 9 10 return ( 11 <div> 12 {props.showFlag ? ( 13 <div className='overlay'> 14 <div className='modalContent'> 15 <h3>名前</h3> 16 <div> 17 <div>画像</div> 18 <div>個数</div> 19 <Count /> 20 </div> 21 <div><button onClick={closeModal}>close</button> 22 </div> 23 </div> 24 </div> 25 ) : ( 26 <></> 27 )} 28 </div> 29 ); 30}; 31 32export default ModalAppe
今回はどのように作るのかということを自分の中で落とし込んで作ってみたかったので、su507様の回答をベストアンサーにさせていただきました。しかし、今後MUIを使って作ることもあると思います。その場合はnomari様の回答を参考にさせていただきます。
お忙しい中、ご回答いただきありがとうございました🙇
回答2件
あなたの回答
tips
プレビュー