๐Ÿ“š Study

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

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

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

    [CSS ํ•ด์„ ] Basic CSS ๋งจ์œ„์— ์ •๋ฆฌ

    [CSS ํ•ด์„ ] Basic CSS ๋งจ์œ„์— ์ •๋ฆฌ

    ์ฝ”๋“œ html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, em, img, b, i, ul, li,form, label ,option,select,input{ ?? em , b , label์€ ์–ด๋”” ํƒœ๊ทธ ์ง€? margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; font-family: 'Noto Sans KR','Noto Sans cjk KR', sans-serif;} table{border-collapse: collapse;} body {line-height:1;} ul li{list-style:none;} img,button, input {bo..

    #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๊ฐ€ ๋ณ€ํ•˜..