JavaScript๋ฅผ ๊ณต๋ถํ๋ฉด์ ์ด๋ ์ ๋ ์ดํดํ๊ธฐ ์์ํ๋ค๋ ์๊ฐ์ด ๋ค์ ์ด๊ฒ์ ๊ฒ ํ๋ก์ ํธ๋ฅผ ๋ ๋ง๋ค์ด๋ณด๊ณ , ๋ ์ฝ๊ฒ ๋ง๋ค์ด๋ณด๊ณ ์ถ๋ค๋ ์๊ฐ์ด ๋ค์๋ค. ๊ทธ๋ ๊ฒ ๋ฆฌ์กํธ์๋ ์์ ๋๋ค.
React(๋ฆฌ์กํธ)๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค ํ๋๋ก์ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ๋ง๋ค๊ธฐ ์ํด ์ฌ์ฉ๋๋ค. ํ์ด์ค๋ถ ๊ฐ๋ฐ์๋ค์ด ๋ง๋ ๊ฑด๋ฐ, ์๋ ๊น์ง๋ง ํด๋ ๊ต์ฅํ ํซํ๋๋ฐ, ์์ธ๋ ๋ ๋ค๋ฅธ๊ฒ ํซํ๋๋ผ. ํ์ง๋ง ์ด์ฉ ์ ์๋ค ์ผ๋จ. ๋๋ ๋ฆฌ์กํธ ๋ฐฐ๋ฅผ ํ๋ค.
์ฌ์ค ๊ทธ๋ฅ ์นํ์ด์ง๋ HTML, CSS ๋ง์ผ๋ก๋ ์ถฉ๋ถํ ๋ง๋ค ์ ์๋ค. ํ์ง๋ง ํ์ด์ง๊ฐ ์ ์ ๋์ด๋๊ณ , ๋์ ์ธ ์ธํฐ๋ํฐ๋ธํ ์น์ ๋ง๋ค๊ธฐ ์ํด์๋ ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ํ์ํ๋ค. ๊ฒ๋ค๊ฐ ์์ฆ์ ๋จ์ํ ์น์ด ์๋๋ผ, ๋ชจ๋ฐ์ผ์์๋ ์ธ ์ ์๋ ์ ๋์ ์ธ ๊ฑธ ์ข์ํ๋ค๋ณด๋ ์ด๋ด ๋, ๋ฆฌ์กํธ๊ฐ ์ ๋ง ์ ์ฉํ๋ค. ์ฑ๊ธํ์ด์ง ์ดํ๋ฆฌ์ผ์ด์ ์ด๋ ๋ชจ๋ฐ์ผ ์ดํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐํ ๋ ์ ์ฉํ๊ฒ ์ฐ์ธ๋ค.
ํนํ๋ ๋ฆฌ์กํธ๊ฐ์ ํ๋ ์์ํฌ๋ DOM๊ด๋ฆฌ์ ์ํ๋ฅผ ์ ๋ฐ์ดํธ, ๊ด๋ฆฌํ๊ธฐ ํธํ๊ณ ์์ ๋๋ ๋๋ค. ๊ทธ๋์ ํ์คํ ์ธ๊ธฐ๊ฐ ๋ง์ ํธ!
React.js ์์ํ๊ธฐ
๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ๊ฐ๋ฐํ๊ฒฝ ์ ํ ํด์ค์ผ ํฉ๋๋ค. ์ต์ํด์ง๋ฉด ๊ฐ๋จํ๊ฒ ๋๊ปด์ง๋๋ฐ ์ฒ์์ ์์ํ ๋๋ ๋ณต์กํ๊ฒ ๋๋ ์๋ ์์ต๋๋ค.
ํ์ํ ๊ฒ๋ค
- Node.js ์ค์น
- code editor (like as VScode)
npm
Node.js๋ฅผ ์ค์นํ๋ฉด ์์ ํฌํจ๋์ด์์ด์ ์์ฐ์ค๋ ์ค์น๋ฉ๋๋ค. Node Packaged Manager์ ์ค์ธ๋ง์ธ๋ฐ, ํตํฉ ๊ด๋ฆฌํด์ฃผ๋ ํด์ด๋ผ๊ณ ์๊ฐํ์๋ฉด ๋ ๋ฏํด์. ์์ฃผ ๋ฑ์ฅํ ์์ด์ด๊ธฐ ๋๋ฌธ์ ๊ธฐ์ตํด๋์๋ฉด ์ข์์
create-react-app
ํ์ํ ๊ฒ๋ค์ ๋ค ์ค์นํด์ฃผ์ จ๋ค๋ฉด ์ด์ create-react-app์ ์คํํ ์ฐจ๋ก์ ๋๋ค.
์ด๋ npx๊ฐ ํ์ํฉ๋๋ค. npx๋ npm์ ์ด์ฉํด์ ์ค์นํ ์ ์๋ต๋๋ค
ํฐ๋ฏธ๋์ ์ผ์ ์งํํด์ฃผ์ธ์~
npm install -g
npx๊ฐ ์ค์น๋์๋ค๋ฉด ์ด์ ์ ๋ง๋ก create-react-app์ ํ ์ฐจ๋ก์ ๋๋ค.
npx create-react-app (app ์ด๋ฆ)
๊ทธ๋ฌ๋ฉด app์ด๋ฆ์ ํด๋๊ฐ ์์ฑ๋๊ณ ๊ทธ ์์ ๋ฆฌ์กํธ๋ฅผ ์คํ์ํค๊ธฐ ์ํ ๋ชจ๋ ํ์ผ๊ณผ ํด๋๋ค์ด ๊ฐ๋ ์๊ฒจ๋ฉ๋๋ค.
React App Start
ํด๋๊ฐ ์์ฑ๋๊ณ ํด๋์์ ํ๋ก์ ํธ๋ฅผ ์คํ ์ํฌ๋ ค๋ฉด npm์ ์ด์ฉํ๋ฉด๋ฉ๋๋ค.
npm start
์ ๋๋ก ์คํ์ด ๋์๋ค๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ฐ ๊ฒ์ ๋๋ค.
ํ์ํ ํ์ผ๊ณผ ํ์์๋ ๋ก๊ณ ํ์ผ ๋ฑ์ ์ ๊ฑฐํ๊ณ ํ๋ก์ ํธ๋ฅผ ์์ํ์๋ฉด ๋๋ต๋๋ค
๋ค๋ฅธ ํด๋๋ ๊ฑด๋๋ฆด ๊ฒ ์๊ณ , src ํด๋์์ App.js / index.js๋ง ๋จ๊ฒจ๋๊ณ ๋ค ์ง์ฐ์ ๋ ๋ฌด๋ฐฉํฉ๋๋ค.
'๊ฐ๋ฐ > React' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
React vs Vue.js ์ฐจ์ด์ (0) | 2022.03.02 |
---|---|
[React] ๋ฆฌ์กํธ ํ๋ก์ ํธ Netlify๋ก ๋ฐฐํฌํ๊ธฐ (0) | 2022.02.21 |
[React.Js] UseState ์ฌ์ฉ / ๊ฐ๋จํ ๋ฆฌ์คํธ ๋ง๋ค๊ณ ์ง์ฐ๊ธฐ (0) | 2022.02.18 |
[React.Js] ๋ฆฌ์กํธ AXIOS ์ฌ์ฉํ๊ธฐ / API ๋ฐ์ดํฐ Fetchํ๊ธฐ (0) | 2022.02.18 |
[React.Js] ๋ฆฌ์กํธ Router ์ฌ์ฉํ๊ธฐ (0) | 2022.02.18 |