Skip to content

Latest commit

ย 

History

History
29 lines (23 loc) ยท 1.42 KB

File metadata and controls

29 lines (23 loc) ยท 1.42 KB

03. ๋ชจ๋‹ฌ UI ๊ตฌํ˜„ํ•˜๊ธฐ: side-effect(feat. event handler)

๐ŸŽฏ ์š”๊ตฌ ์‚ฌํ•ญ

  • RestaurantList ์˜ ์•„์ดํ…œ์„ ํด๋ฆญํ•˜๋ฉด, ํด๋ฆญํ•œ ์•„์ดํ…œ์˜ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๋ชจ๋‹ฌ์ด ๋œจ๋„๋ก ๋ณ€๊ฒฝํ•ด ์ฃผ์„ธ์š”. 'ํ™•์ธ' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ ๋ชจ๋‹ฌ ๋’ค์˜ backdrop์„ ํด๋ฆญํ•˜๋ฉด ๋ชจ๋‹ฌ์ด ๋‹ซํ˜€์•ผ ํ•ฉ๋‹ˆ๋‹ค.
    • (์ž‘์€ ๋‹จ๊ณ„๋กœ ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ 1) ์•„์ดํ…œ์„ ํด๋ฆญํ•˜๋ฉด ์ •ํ•ด์ง„ ํ…์ŠคํŠธ๋ฅผ ๊ทธ๋Œ€๋กœ ๋ณด์—ฌ์ฃผ๋Š” ๋ชจ๋‹ฌ์„ ์—ด๊ณ  ๋‹ซ์Šต๋‹ˆ๋‹ค.
    • (์ž‘์€ ๋‹จ๊ณ„๋กœ ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ 2) ํด๋ฆญํ•œ ์•„์ดํ…œ์˜ ์ •๋ณด๋ฅผ ๋ชจ๋‹ฌ์— ๋‚ด๋ ค์ค„ ์ˆ˜ ์žˆ๋„๋ก ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

๊ตฌํ˜„ ๊ฒฐ๊ณผ ์˜ˆ์‹œ

// App.jsx
{isModalOpen && <RestaurantDetailModal {/** ์ ์ ˆํ•œ props */}/>}

โœ… ํ‚ค์›Œ๋“œ

  • event handler (feat. side effect)
  • conditional rendering
  • lifting state up

๐Ÿง™โ€โ™€๏ธ ์ง„ํ–‰ ๊ฐ€์ด๋“œ

  • ๊ถŒ์žฅ ์ง„ํ–‰ ์‹œ๊ฐ„: 1์‹œ๊ฐ„ ๋‚ด
  • ๊ถŒ์žฅ ์‹œ๊ฐ„ ์ดํ›„์—๋Š” ์š”๊ตฌ ์‚ฌํ•ญ ๋ณ„๋กœ ์•„๋ž˜ ๋ธŒ๋žœ์น˜๋ฅผ ์ฐธ๊ณ ํ•ด ๋ณด์„ธ์š”

๐Ÿ”— ์ฐธ๊ณ  ๋ฌธ์„œ