๐Ÿ“š Study/JS, JQuery

    [React JS][๋‹ˆ์ฝ”์ฝ”๋”ฉ] Effects

    [React JS][๋‹ˆ์ฝ”์ฝ”๋”ฉ] Effects

    6.0 Introduction React๋กœ ์ž‘์—…ํ•  ๋•Œ ๋งˆ์ง€๋ง‰์œผ๋กœ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฑธ ๊ณต๋ถ€ํ•  ๊ฑฐ๋‹ค. ๋ฌธ์ œ๋ฅผ ํ•˜๋‚˜ ์ •์˜ ํ•  ๊ฑฐ๋‹ค. ์šฐ๋ฆฌ๋Š” ๊ณ„์† state๋ฅผ changeํ•ด ์™”๊ณ , ๊ทธ๋Ÿด ๋•Œ ๋งˆ๋‹ค ์ด ๋ชจ๋“  ๊ฒƒ์ด ๋‹ค์‹œ ์‹คํ–‰๋˜๋Š” ๊ฒƒ์— ์ต์ˆ™ ํ–ˆ๋‹ค. ๋ฌธ์ œ component ์ฒ˜์Œ render๋  ๋•Œ๋งŒ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๊ธธ ์›ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ง€๊ธˆ์€ ๋‚ด state๊ฐ€ ๋ณ€ํ•  ๋•Œ๋งˆ๋‹ค ๋งค๋ฒˆ ์ด console.log๊ฐ€ ์‹คํ–‰๋  ๊ฑฐ๋‹ค. ๊ฐ€๋”์€ ์ฒซ๋ฒˆ์งธ๋กœ renderํ•  ๋•Œ๋งŒ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์‹ถ์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ฒซ๋ฒˆ์งธ render์—๋งŒ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๊ณ , ๋‹ค๋ฅธ state๋ณ€ํ™”์—๋Š” ์‹คํ–‰๋˜์ง€ ์•Š๋„๋ก ํ•˜๋Š” ๊ฑฐ๋‹ค. ์šฐ๋ฆฌ๋Š” ์–ด๋–ป๊ฒŒ ํŠน์ • ์ฝ”๋“œ๋“ค์ด ์ฒซ๋ฒˆ์งธ componet render์—์„œ๋งŒ ์‹คํ–‰๋˜๊ฒŒ ํ•˜๋Š”์ง€ ๋ฐฐ์šฐ๊ณ  ์‹ถ๋‹ค. ์ฒ˜์Œ ํ•œ๋ฒˆ๋งŒ ๋‚˜์ค‘์— state๊ฐ€ ๋ณ€ํ™”ํ•ด๋„, ๊ทธ ์ฝ”๋“œ๋Š” ๋‹ค..

    [React JS][๋‹ˆ์ฝ”์ฝ”๋”ฉ] Create react App

    [React JS][๋‹ˆ์ฝ”์ฝ”๋”ฉ] Create react App

    # 5.0 Intruduction create-react-app์€ ๋ฆฌ์•กํŠธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ์ตœ๊ณ ์˜ ๋ฐฉ์‹์ด๋‹ค. ์ด์ „์— ๋งŒ๋“  ๋ฆฌ์•กํŠธ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์Šคํฌ๋ฆฝํŠธ๋ฅผ importํ•จ์œผ๋กœ์จ ๋งŒ๋“ค์–ด ์กŒ๋‹ค. create-react-app์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด , ReactJS ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ฆ์— ์žˆ์–ด ํ›จ์”ฌ ์‰ฌ์›Œ์งˆ ๊ฑฐ๋‹ค. ์ด์œ ๋Š” create-react-app์€ ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์€ ์Šคํฌ๋ฆฝํŠธ๋“ค๊ณผ ๋งŽ์€ ์‚ฌ์ „์„ค์ •๋“ค์„ ์šฐ๋ฆฌ๋ฅผ ์œ„ํ•ด์„œ ์ค€๋น„ํ•ด์ฃผ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด, ์šฐ๋ฆฌ๊ฐ€ create-react-app์„ ์ด์šฉํ•ด์„œ ์ž‘์—…์„ ํ•  ๋•Œ, ์ฆ‰ create-react- app์„ ์‚ฌ์šฉํ•ด์„œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๋ฉด ๊ฐœ๋ฐœ ์„œ๋ฒ„์— ์ ‘๊ทผํ•œ๋‹ค๋“ ๊ฐ€, ์ž๋™์œผ๋กœ ์ƒˆ๋กœ๊ณ ์นจ์„ ์‹œ์ผœ์ค€๋‹ค๋˜๋“ ๊ฐ€ ์ฆ‰๊ฐ์ ์œผ๋กœ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•ˆ์— CSS๋ฅผ ํฌํ•จ์‹œ์ผœ ์ค€๋‹ค๋“ ๊ฐ€ ํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค์ด ์žˆ๋‹ค. create..

    [React JS][๋‹ˆ์ฝ” ์ฝ”๋”ฉ] Props

    [React JS][๋‹ˆ์ฝ” ์ฝ”๋”ฉ] Props

    4.0 Props ๋ฌด์—‡์ด ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ผ์•ผ ํ•˜๋Š”์ง€, header๊ฐ€ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์•Œ๊ฒŒ ๋ ๊ฑฐ๋‹ค. footer๊ฐ€ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋Š”์ง€, notificaion bar๊ฐ€ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋˜์–ด์•ผ ํ•˜๋Š”์ง€ ์ด ๊ฐ๊ฐ์˜ ๋กœ์ง๋“ค์„ ๊ฐ๊ฐ์˜ ์กฐ๊ฐ๋“ค๋กœ ๋ถ„๋ฆฌ์‹œ์ผœ์„œ, ๋‹ค๋ฅธ ์ž์‹ ์ปดํฌ๋„ŒํŠธ๋ฅผ Rendering ํ•˜๋Š” ํฐ ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค. Props๋Š” ์ผ์ข…์˜ ๋ฐฉ์‹์ด๋‹ค. ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๋กœ๋ถ€ํ„ฐ ์ž์‹ ์ปดํฌ๋„ŒํŠธ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋ฐฉ๋ฒ• ์šฐ๋ฆฌ๊ฐ€ ํ•  ๊ฒƒ์€, ํ•œ ์˜ˆ์‹œ๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‹ค. ๋ถ€๋ชจ ์ปดํฌ๋„ŒํŠธ๋กœ๋ถ€ํ„ฐ ์ž์‹ ์ปดํฌ๋„ŒํŠธ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋‚ด๋Š” ๊ฑฐ๋‹ค. Props๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ, ๊ทธ๋ฆฌ๊ณ  ์ง„์ •์œผ๋กœ ์ด๊ฒŒ ์™œ ํ•„์š”ํ•œ์ง€๋ฅผ ๋ณด๊ธฐ ์œ„ํ•ด Props๋กœ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•˜๊ฒŒ ๋  ๋ฌธ์ œ๋“ค์„ ์ผ๋‹จ ๋จผ์ € ๊ฒช์–ด๋ด์•ผ ํ•œ๋‹ค. ๊ฐ€์ •(์šฐ๋ฆฌ๊ฐ€ ํšŒ์‚ฌ์—์„œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ..

    [React JS][๋‹ˆ์ฝ” ์ฝ”๋”ฉ] STATE

    [React JS][๋‹ˆ์ฝ” ์ฝ”๋”ฉ] STATE

    3.0 Understanding State state๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋Š” ๊ณณ์ด๋‹ค. ๋ฐ”๋‹๋ผ JS๋กœ ์˜ˆ์ œ๋ฅผ ์™„์„ฑ์‹œํ‚ค๋ ค๋ฉด counter๋ฅผ ์ฆ๊ฐ€์‹œํ‚ค๊ณ  ๊ทธ๊ฑธUI์— ๋””์Šคํ”Œ๋ ˆ์ด ํ•˜๊ณ  ์žˆ๋‹ค. ๊ทธ๊ฑธ state๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. counter๋ง์ด๋‹ค. ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด React.js์–ดํ”Œ์— ๊ฐ’์ด ๋ฐ”๋€” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด์•„์ค„์ˆ˜ ์žˆ์„๊นŒ. ์ด์ œ React.js ์ฝ”๋“œ ๋‚ด์—์„œ ์นด์šดํŠธ๋ฅผ ์…€ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด ๋ณด์ž. ๋‘๊ฐ€์ง€ ๋ฐฉ์‹์ด ์žˆ๋‹ค ์ข‹์ง€์•Š์€ ๋ฐฉ์‹๊ณผ ๋‹ค๋ฅธํ•˜๋‚˜๋Š” ์šฐ๋ฆฌ๊ฐ€ ํ•ด์•ผํ•  ์ตœ๊ณ ์˜ ๋ฐฉ์‹์ด๋‹ค. ๋จผ์ € ๋ณ„๋กœ ์ข‹์ง€ ์•Š์€ ๋ฐฉ์‹์œผ๋กœ ํ•ด๋ณด๊ณ  ์šฐ๋ฆฌํ•œํ…Œ ์–ด๋–ค๊ฒŒ ํ•„์š”ํ•˜๊ณ , ์–ด๋–ค๊ฑธ ํ•ด์•ผ๋˜๋Š”์ง€ ์ดํ•ดํ•˜๊ณ  ๋‚˜์„œ ํ”„๋กœํŽ˜์…”๋„ํ•œ React.js ๋ฐฉ์‹์„ ๋ณด์—ฌ์ค€๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์™œ ๊ทธ๋Ÿฐ๋ฐฉ์‹์œผ๋กœ ํ•˜๋Š” ๊ฑด์ง€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์„๊ฑฐ๋‹ค. let counter= 0 ; ์ด๋Ÿฐ ๋ณ€์ˆ˜๋“ค์„ JSX..

    [React JS][๋‹ˆ์ฝ” ์ฝ”๋”ฉ]  THE BASICS OF REACT

    [React JS][๋‹ˆ์ฝ” ์ฝ”๋”ฉ] THE BASICS OF REACT

    2.0 Introduction ๋ฐ”๋‹๋ผ JS ์ฝ”๋“œ์™€ React JS ์ฝ”๋“œ๋ฅผ ๋น„๊ตํ•ด๋ณผ ๊ฑฐ๋‹ค. React JS ๋Š” UI๋ฅผ interactiveํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์คŒ ํ™”๋ฉด์— ๋ฒ„ํŠผ ํ•˜๋‚˜์™€ ํ…์ŠคํŠธ ํ•˜๋‚˜๋งŒ ์žˆ์„๊ฑฐ๋‹ค. ํ™”๋ฉด์˜ ํ…์ŠคํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์‹ถ๋‹ค. ํด๋ฆญํ•  ๋•Œ๋งˆ๋‹ค ํ™”๋ฉด์˜ ํ…์ŠคํŠธ๋ฅผ ์—…๋ฐ์ดํŠธํ•ด์„œ ํ•œ๋ฒˆ ๋‘๋ฒˆ ๋ช‡๋ฒˆ์ด๋“  ํด๋ฆญ ๋˜์—ˆ๋‹ค๊ณ  ๋‚˜์˜จ๋‹ค. ๋ฒ„ํŠผ์„ ๋งŒ๋“ค๊ณ (HTML) ์ด ๋ฒ„ํŠผ์„ HTML์—์„œ ์ฐพ์•„์•ผ ํ•˜๋‹ˆ๊นŒ id๋‚˜ class๋ฅผ ์ฃผ์–ด์•ผ ๋œ๋‹ค. Javascript์—์„œ ๊ทธ ๋ฒ„ํŠผ์„ ์ฐพ์•„์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ document.getElementById๋‚˜ querySelector ๋“ฑ์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ๊ทธ๋‹ค์Œ์œผ๋กœ button.addEventLister๋ฅผ ํ•˜๊ณ  function์„ ์‹คํ–‰ํ•ด์•ผ ํ• ๊ฑฐ๋‹ค. React JS ํŒ€์€ ์ด๊ฑธ ์•ˆ๋‹ค. ๋ฒ„ํŠผ์„ ์ƒ์„ฑํ•˜๋Š”๋ฐ ๋ฌด์—‡์ด ..

    [React JS]Components์™€ Props

    ์ปดํฌ๋„ŒํŠธ๋ฅผ ํ†ตํ•ด UI๋ฅผ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ฐœ๋ณ„์ ์ธ ์—ฌ๋Ÿฌ ์กฐ๊ฐ์œผ๋กœ ๋‚˜๋ˆ„๊ณ , ๊ฐ ์กฐ๊ฐ์„ ๊ฐœ๋ณ„์ ์œผ๋กœ ์‚ดํŽด๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€์—์„œ๋Š” ์ปดํฌ๋„ŒํŠธ์˜ ๊ฐœ๋…์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์ปดํฌ๋„ŒํŠธ API ๋ ˆํผ๋Ÿฐ์Šค๋Š” ์—ฌ๊ธฐ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋…์ ์œผ๋กœ ์ปดํฌ๋„ŒํŠธ๋Š” JavaScript ํ•จ์ˆ˜์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. “props”๋ผ๊ณ  ํ•˜๋Š” ์ž„์˜์˜ ์ž…๋ ฅ์„ ๋ฐ›์€ ํ›„, ํ™”๋ฉด์— ์–ด๋–ป๊ฒŒ ํ‘œ์‹œ๋˜๋Š”์ง€๋ฅผ ๊ธฐ์ˆ ํ•˜๋Š” React ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํ•จ์ˆ˜ ์ปดํฌ๋„ŒํŠธ์™€ ํด๋ž˜์Šค ์ปดํฌ๋„ŒํŠธ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฐ€์žฅ ๊ฐ„๋‹จํ•œ ๋ฐฉ๋ฒ•์€ JavaScript ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. function Welcome(props) { return Hello, {props.name}; } ์ด ํ•จ์ˆ˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง„ ํ•˜๋‚˜์˜ “props” (props๋Š” ์†์„ฑ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค) ..

    [REACT JS]  ์—˜๋ฆฌ๋จผํŠธ ๋ Œ๋”๋ง

    [REACT JS] ์—˜๋ฆฌ๋จผํŠธ ๋ Œ๋”๋ง

    ์—˜๋ฆฌ๋จผํŠธ๋Š” React ์•ฑ์˜ ๊ฐ€์žฅ ์ž‘์€ ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. ์—˜๋ฆฌ๋จผํŠธ๋Š” ํ™”๋ฉด์— ํ‘œ์‹œํ•  ๋‚ด์šฉ์„ ๊ธฐ์ˆ ํ•ฉ๋‹ˆ๋‹ค. const element = Hello, world; ๋ธŒ๋ผ์šฐ์ € DOM ์—˜๋ฆฌ๋จผํŠธ์™€ ๋‹ฌ๋ฆฌ React ์—˜๋ฆฌ๋จผํŠธ๋Š” ์ผ๋ฐ˜ ๊ฐ์ฒด์ด๋ฉฐ(plain object) ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. React DOM์€ React ์—˜๋ฆฌ๋จผํŠธ์™€ ์ผ์น˜ํ•˜๋„๋ก DOM์„ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์˜ ๋” ๋„๋ฆฌ ์•Œ๋ ค์ง„ ๊ฐœ๋…์ธ “์ปดํฌ๋„ŒํŠธ”์™€ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ํ˜ผ๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ ์žฅ์—์„œ ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ์—˜๋ฆฌ๋จผํŠธ๋Š” ์ปดํฌ๋„ŒํŠธ์˜ “๊ตฌ์„ฑ ์š”์†Œ”์ด๋ฏ€๋กœ ์ด๋ฒˆ ์žฅ์„ ์ฝ๊ณ  ๋‚˜์„œ ๋‹ค์Œ ์žฅ์œผ๋กœ ๋„˜์–ด๊ฐˆ ๊ฒƒ์„ ๊ถŒํ•ฉ๋‹ˆ๋‹ค. DOM์— ์—˜๋ฆฌ๋จผํŠธ ๋ Œ๋”๋งํ•˜๊ธฐ HTML ํŒŒ์ผ ์–ด๋”˜๊ฐ€์— ๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ด…์‹œ๋‹ค. ์ด ์•ˆ์— ๋“ค์–ด๊ฐ€๋Š” ๋ชจ๋“  ์—˜๋ฆฌ๋จผํŠธ๋ฅผ React DOM์—์„œ ๊ด€๋ฆฌํ•˜๊ธฐ ๋•Œ..

    #1  React JS๋ฅผ ๋ฐฐ์›Œ์•ผํ•˜๋Š” ์ด์œ  [React JS ์˜ํ™”์›น์‚ฌ์ดํŠธ]

    #1 React JS๋ฅผ ๋ฐฐ์›Œ์•ผํ•˜๋Š” ์ด์œ  [React JS ์˜ํ™”์›น์‚ฌ์ดํŠธ]

    ํŽ˜์ด์Šค๋ถ์€ ์—ฌ์ „ํžˆ React JS๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. ์ธ์Šคํƒ€๊ทธ๋žจ, ํ•€ํ„ฐํ…Œ์ŠคํŠธ, ์šฐ๋ฒ„, ๋„ทํ”Œ๋ฆญ์Šค ์ด๋Ÿฐ ์‚ฌ์ดํŠธ๋“ค๋„ React JS๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. 1.1 Why React ํŽ˜์ด์Šค ๋ถ์ด React JS๋ฅผ ๋งŒ๋“ค์—ˆ๊ณ , ์ด๊ฑธ๋กœ ํŽ˜์ด์Šค๋ถ ์›น์‚ฌ์ดํŠธ ์ „๋ถ€๋ฅผ ๋‹ค์‹œ ๋งŒ๋“ค์—ˆ๋‹ค. React JS๋Š” ์ •๋ง ํฐ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. React JS๋Š” Javascript์™€ ์•„์ฃผ ๊ฐ€๊น๊ธฐ ๋•Œ๋ฌธ์—, React JS๋กœ ์ž‘์—…ํ•  ๋•Œ ๋Œ€๋ถ€๋ถ„์˜ ์ž‘์—…์€ ๊ทธ๋ƒฅ ์ผ๋ฐ˜ Javascript์— ๋Œ€ํ•œ ์ž‘์—…์ด๋‹ค. React JS๋Š” Javascript์˜ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ๊ฑฐ์˜ ๋‹ค ๋นŒ๋ ค์™”๋‹ค. ์ด ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๊ฑฐ๋Œ€ํ•˜๋‹ค. React JS๋ฅผ ๋ฐฐ์šฐ๊ณ  ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์€ ์—ฌ๋Ÿฌ๋ถ„์„ ๋” ์•„๋Šฅ Javascript ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๋„๋ก ํ•˜๊ธฐ ๋•Œ๋ฌธ์— React JS๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ œ์ž‘๋œ framework๋“ค์ด..

    JSX๋ž€? (์ •์˜, ์žฅ์ , ๋ฌธ๋ฒ•)

    ์•„๋ž˜ ๋ณ€์ˆ˜ ์„ ์–ธ์„ ์‚ดํŽด๋ด…์‹œ๋‹ค. const element = Hello, world!; ์œ„์— ํฌํ•œํ•œ ํƒœ๊ทธ ๋ฌธ๋ฒ•์€ ๋ฌธ์ž์—ด๋„, HTML๋„ ์•„๋‹™๋‹ˆ๋‹ค. JSX๋ผ ํ•˜๋ฉฐ JavaScript๋ฅผ ํ™•์žฅํ•œ ๋ฌธ๋ฒ•์ž…๋‹ˆ๋‹ค. UI๊ฐ€ ์–ด๋–ป๊ฒŒ ์ƒ๊ฒจ์•ผ ํ•˜๋Š”์ง€ ์„ค๋ช…ํ•˜๊ธฐ ์œ„ํ•ด React์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•  ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. JSX๋ผ๊ณ  ํ•˜๋ฉด ํ…œํ”Œ๋ฆฟ ์–ธ์–ด๊ฐ€ ๋– ์˜ค๋ฅผ ์ˆ˜๋„ ์žˆ์ง€๋งŒ, JavaScript์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. JSX๋Š” React “์—˜๋ฆฌ๋จผํŠธ(element)” ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ ์„น์…˜์—์„œ๋Š” DOM์— ์–ด๋–ป๊ฒŒ ๋ Œ๋”๋งํ•˜๋Š”์ง€ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜๋ฅผ ๋ณด๋ฉด JSX๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๊ธฐ๋ณธ์‚ฌํ•ญ์„ ์ฐพ์œผ์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 1. JSX๋ž€? React์—์„œ๋Š” ๋ณธ์งˆ์ ์œผ๋กœ ๋ Œ๋”๋ง ๋กœ์ง์ด UI ๋กœ์ง(์ด๋ฒคํŠธ๊ฐ€ ์ฒ˜๋ฆฌ๋˜๋Š” ๋ฐฉ์‹, ์‹œ๊ฐ„์— ๋”ฐ๋ผ state๊ฐ€ ๋ณ€ํ•˜..