๐ Study/JS, JQuery
[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
# 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
4.0 Props ๋ฌด์์ด ์ปดํฌ๋ํธ๊ฐ ๋ผ์ผ ํ๋์ง, header๊ฐ ์ปดํฌ๋ํธ๊ฐ ๋์ด์ผ ํ๋์ง ์๊ฒ ๋ ๊ฑฐ๋ค. footer๊ฐ ์ปดํฌ๋ํธ๊ฐ ๋์ด์ผ ํ๋์ง, notificaion bar๊ฐ ์ปดํฌ๋ํธ๊ฐ ๋์ด์ผ ํ๋์ง ์ด ๊ฐ๊ฐ์ ๋ก์ง๋ค์ ๊ฐ๊ฐ์ ์กฐ๊ฐ๋ค๋ก ๋ถ๋ฆฌ์์ผ์, ๋ค๋ฅธ ์์ ์ปดํฌ๋ํธ๋ฅผ Rendering ํ๋ ํฐ ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ฅผ ๊ฐ์ง ์ ์๋ค. Props๋ ์ผ์ข ์ ๋ฐฉ์์ด๋ค. ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ก๋ถํฐ ์์ ์ปดํฌ๋ํธ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ผ ์ ์๊ฒ ํด์ฃผ๋ ๋ฐฉ๋ฒ ์ฐ๋ฆฌ๊ฐ ํ ๊ฒ์, ํ ์์๋ฅผ ๋ง๋ค๊ฑฐ๋ค. ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ก๋ถํฐ ์์ ์ปดํฌ๋ํธ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ด๋ ๊ฑฐ๋ค. Props๋ฅผ ์ดํดํ๊ธฐ ์ํด์, ๊ทธ๋ฆฌ๊ณ ์ง์ ์ผ๋ก ์ด๊ฒ ์ ํ์ํ์ง๋ฅผ ๋ณด๊ธฐ ์ํด Props๋ก ํด๊ฒฐ์ด ๊ฐ๋ฅํ๊ฒ ๋ ๋ฌธ์ ๋ค์ ์ผ๋จ ๋จผ์ ๊ฒช์ด๋ด์ผ ํ๋ค. ๊ฐ์ (์ฐ๋ฆฌ๊ฐ ํ์ฌ์์ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ง..
[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
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 ์ฑ์ ๊ฐ์ฅ ์์ ๋จ์์ ๋๋ค. ์๋ฆฌ๋จผํธ๋ ํ๋ฉด์ ํ์ํ ๋ด์ฉ์ ๊ธฐ์ ํฉ๋๋ค. const element = Hello, world; ๋ธ๋ผ์ฐ์ DOM ์๋ฆฌ๋จผํธ์ ๋ฌ๋ฆฌ React ์๋ฆฌ๋จผํธ๋ ์ผ๋ฐ ๊ฐ์ฒด์ด๋ฉฐ(plain object) ์ฝ๊ฒ ์์ฑํ ์ ์์ต๋๋ค. React DOM์ React ์๋ฆฌ๋จผํธ์ ์ผ์นํ๋๋ก DOM์ ์ ๋ฐ์ดํธํฉ๋๋ค. ์ฃผ์ ๋ ๋๋ฆฌ ์๋ ค์ง ๊ฐ๋ ์ธ “์ปดํฌ๋ํธ”์ ์๋ฆฌ๋จผํธ๋ฅผ ํผ๋ํ ์ ์์ต๋๋ค. ๋ค์ ์ฅ์์ ์ปดํฌ๋ํธ์ ๋ํด ์๊ฐํ ์์ ์ ๋๋ค. ์๋ฆฌ๋จผํธ๋ ์ปดํฌ๋ํธ์ “๊ตฌ์ฑ ์์”์ด๋ฏ๋ก ์ด๋ฒ ์ฅ์ ์ฝ๊ณ ๋์ ๋ค์ ์ฅ์ผ๋ก ๋์ด๊ฐ ๊ฒ์ ๊ถํฉ๋๋ค. DOM์ ์๋ฆฌ๋จผํธ ๋ ๋๋งํ๊ธฐ HTML ํ์ผ ์ด๋๊ฐ์ ๊ฐ ์๋ค๊ณ ๊ฐ์ ํด ๋ด ์๋ค. ์ด ์์ ๋ค์ด๊ฐ๋ ๋ชจ๋ ์๋ฆฌ๋จผํธ๋ฅผ React DOM์์ ๊ด๋ฆฌํ๊ธฐ ๋..
#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๊ฐ ๋ณํ..