A JavaScript library for building user interfaces
์น์ฌ์ดํธ ํ์ด์ง ์ด๋, ๋ณ๊ฒฝ์ด ๋ถ๋๋ฝ๊ฒ ๋์ํจ
npx create-react-app (ํ๋ก์ ํธ๋ช )
cd (ํ๋ก์ ํธ๋ช )
npm start
์ด ์ธ์๋ yarn ์ ํตํด์๋ ๊ฐ๋ฅํ๋ค
์ค์น: npm install -g yarn
๋ฒ์ ํ์ธ(์ค์นํ์ธ): yarn -v
ํจํค์ง ์ค์น: yarn add [์ค์นํ ํจํค์ง ์ด๋ฆ]
์ฑ์ ์ด๋ฃจ๋ ์ฝ๋๋ค์ ์กฐ๊ฐ
1.src ํด๋์์ ํ์ผ ๋ง๋ค๊ธฐ(๋๋ฌธ์๋ก ์์, ์นด๋ฉ์ผ์ด์ค๋ก ์ฌ์ฉ)
2.ํจ์ ๋ง๋ค๊ธฐ(return๋ฌธ ์์ JSX๋ฌธ๋ฒ์ ์ฌ์ฉํ์ฌ ์์ฑํ๋ฉด ๋๋ค)
JavaScript ํจ์ ์ ์ ์ฌํ๋ค.
์ปดํฌ๋ํธ๋ฅผ ํตํด UI๋ฅผ ์ฌ์ฌ์ฉ์ด ๊ฐ๋ฅํ ๊ฐ๋ณ์ ์ธ ์ฌ๋ฌ ์กฐ๊ฐ์ผ๋ก ๋๋๊ณ , ๊ฐ ์กฐ๊ฐ์ ๊ฐ๋ณ์ ์ผ๋ก ์ดํด๋ณผ ์ ์๋ค.
๋ฆฌ์กํธ ์ปดํฌ๋ํธ๋ ํจ์ํ๊ณผ ํด๋์คํ ๋๊ฐ์ง๊ฐ ์์ง๋ง ๊ณต์์์๋ ํจ์ํ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ๊ธฐ๋ฅผ ๊ถ์ฅํ๊ณ ์๋ค.
๋ถ๋ชจ-์์ ์ปดํฌ๋ํธ
์ปดํฌ๋ํธ๋ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ฅผ ํ์ ์ ์์ต๋๋ค. ์ด๋ ๋ค๋ฅธ ์ปดํฌ๋ํธ๋ฅผ ํ๋ ์ปดํฌ๋ํธ๋ฅผ ๋ถ๋ชจ ์ปดํฌ๋ํธ๋ผ๊ณ ๋ถ๋ฅด๊ณ , ๋ค๋ฅธ ์ปดํฌ๋ํธ ์์์ ํ์ด์ง๋ ์ปดํฌ๋ํธ๋ฅผ ์์ ์ปดํฌ๋ํธ๋ผ๊ณ ํ๋ค.
JavaScript๋ฅผ ํ์ฅํ ๋ฌธ๋ฒ : HTML์ ํ์ JS
JavaScript์ ๋ชจ๋ ๊ธฐ๋ฅ์ด ํฌํจ๋์ด ์์ผ๋ฉฐ, React Element๋ฅผ ์์ฑํ๊ธฐ ์ํ ๋ฌธ๋ฒ( HTML์ ์์)
โ
html๊ณผ ๋ค๋ฅธ ๋ถ๋ถ
className์ ์นด๋ฉ์ผ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ์จ์ผ ํ๋ฉฐ, ์ธ๋ผ์ธ์ผ๋ก style์์ฑ์ ๋ฃ์ ๊ฒฝ์ฐ ๊ฐ์ฒดํ์
์ผ๋ก ๋ค์ด๊ฐ๊ธฐ ๋๋ฌธ์ ์๋ฐ์คํฌ๋ฆฝํธ + ๊ฐ์ฒด+ ๋ฐ์ดํ๋ฅผ ์ฃผ์ ํด์ผ ํ๋ค.
ํ๋ผ๋ฏธํฐ๋ก props๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋น ํ๊ทธ๊ฐ ๊ฐ์ฒด ํํ๋ก ๋ค์ด์จ๋ค.
*props๋ก ๋ฆฌ์คํธ ๊ตฌํํ๊ธฐ
์์ ๊ฐ์ ํ๋์ฝ๋ฉ์ ์ข์ง ์์
for๋ฌธ์ ์ฌ์ฉํ์ฌ ๊ตฌํํ๊ธฐ