์ปดํฌ๋„ŒํŠธ

    [ReactJS] Component์˜ ๋ถ„๋ฆฌ์™€ ์žฌ์‚ฌ์šฉ (๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ)

    ์ปดํฌ๋„ŒํŠธ ๋ถ„๋ฆฌ ๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ ๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ๋ž€ ๋ณต์žกํ•œ ์ฝ”๋“œ๋ฅผ ๋น„์Šทํ•œ ๊ธฐ๋Šฅ์„ ํ•˜๋Š” ์ฝ”๋“œ๋ผ๋ฆฌ ๋ณ„๋„๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ๋ณ„๋œ '๊ฐœ๊ฐœ์˜ ๊ด€์‹ฌ์‚ฌ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ถ€๋ถ„'์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ๋””์ž์ธ ์›์น™์ด๋‹ค. ์ปดํฌ๋„ŒํŠธ ๋ณ„๋กœ ๊ด€์‹ฌ์‚ฌ๋ฅผ ๋ถ„๋ฆฌํ•˜๋ฉด ํ™•์žฅ์„ฑ๊ณผ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ์ด์œ  React์—์„œ ์ปดํฌ๋„ŒํŠธ๋Š” ๋‹ค์–‘ํ•œ ์—ญํ• ์„ ํ•œ๋‹ค. ์–ด๋–ค ์ปดํฌ๋„ŒํŠธ๋Š” UI๋ฅผ ํ‘œํ˜„ํ•˜๊ณ ์ž ํ•˜๊ณ , ๋˜ ์–ด๋–ค ์ปดํฌ๋„ŒํŠธ๋Š” ๋™์ž‘ํ•˜๋Š” ๋กœ์ง์„ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค. ์œ„์˜ ๋‘ ์—ญํ• ์„ ๋ชจ๋‘ ๋‹ด๋Š” ์ปดํฌ๋„ŒํŠธ ๋˜ํ•œ ์กด์žฌํ•˜๊ณ , ํ•˜๋‚˜๋„ ๋‹ด์ง€ ์•Š๋Š” ์ปดํฌ๋„ŒํŠธ๋„ ์กด์žฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด์ฒ˜๋Ÿผ ์ปดํฌ๋„ŒํŠธ๋Š” ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์†Œ UI ๋‹จ์œ„์ž„์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ , ์›น์˜ ๋ณต์žก๋„์™€ ํ•ด๋‹น ์ปดํฌ๋„ŒํŠธ์—์„œ ์ˆ˜ํ–‰ํ•˜๋ ค๊ณ  ํ•˜๋Š” ์—ญํ• ์— ๋”ฐ๋ผ ์–ผ๋งˆ๋“ ์ง€ ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ '๊ด€์‹ฌ์‚ฌ์˜ ๋ถ„๋ฆฌ'..

    [ReactJS] JSX์™€ ์ปดํฌ๋„ŒํŠธ (Component)

    JSX JSX๋Š” JavaScript์˜ ๋ฌธ๋ฒ•์„ ํ™•์žฅํ•œ React๋งŒ์˜ ๋ฌธ๋ฒ•์œผ๋กœ, JavaScript ๋‚ด์—์„œ HTML ๋งˆํฌ์—…์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•œ ๊ฒƒ์ด๋‹ค. ๋งˆํฌ์—…๊ณผ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋กœ์ง์ด ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค๊ณ  ํŒ๋‹จํ•˜์—ฌ ์ด๋ฅผ ํ•œ ๋ฒˆ์— ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๊ณ ๋ฏผํ•œ ๊ฒฐ๊ณผ ์ƒ๊ฒจ๋‚œ ๋ฌธ๋ฒ•์ด๋‹ค. JavaScript ๋‚ด์—์„œ ๋งˆํฌ์—…์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , JS ๋กœ์ง๋„ ํ•จ๊ป˜ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. JavaScript ์ •์‹ ๋ฌธ๋ฒ•์€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ด๋ฅผ ํ•ด์„ํ•  ์ˆ˜ ์—†๋‹ค. ๋”ฐ๋ผ์„œ Babel ๋ณ€์—ญ๊ธฐ๋กœ ์ด๋ฅผ React.createElement() ํ•จ์ˆ˜๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ •์ด ๋ฐ˜๋“œ์‹œ ํ•„์š”ํ•˜๋‹ค. JSX์˜ ํŠน์ง• JSX๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๊ฐ’์ด๋‹ค. ํŠน์ •ํ•œ ๋ณ€์ˆ˜์— ์ด ๊ฐ’์„ ๋‹ด์„ ์ˆ˜ ์žˆ๊ณ , ํ•จ์ˆ˜์˜ ์ธ์ž๋กœ ์ „๋‹ฌํ•˜๊ฑฐ๋‚˜ ํ•จ์ˆ˜์˜ ๋ฆฌํ„ด๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. f..