๋ณธ ๊ฒ์๊ธ์ PC๋ฒ์ ์ ์ต์ ํ ๋์ด์์ผ๋ฉฐ ํจ์คํธ์บ ํผ์ค ์ํฌํฐ์ฆ 3๊ธฐ๋ก ํ๋ํ๋ฉฐ
"ํ ๋ฒ์ ๋๋ด๋ Node.js ์น ํ๋ก๊ทธ๋๋ฐ ์ด๊ฒฉ์ฐจ ํจํค์ง Online"์ ๋ฌด๋ฃ๋ก ํ์ฐฌ๋ฐ์ ์์ฑํ ๊ฒ์๊ธ์ ๋๋ค.
ํ์คํ๊ฐ๋ฐ์ ํ์คํ๊ฐ๋ฐ์ ํ์คํ๊ฐ๋ฐ์ ํ์คํ๊ฐ๋ฐ์ ํ์คํ๊ฐ๋ฐ์
๋ฒ์จ 4์ฃผ์ฐจ๋ค. ์ด์ ํ ์ฃผ๋ง ๋ํ๋ฉด ์ํฌํฐ์ฆ ํ๋์ ๋... ์ด๋ฒ ์ฃผ์ ํ๋ ์ฐ๊ณ ๋ค์ ์ฃผ์ ๋ง์ง๋ง 5์ฃผ์ฐจ๋ฅผ ์ธ๋ผํ๋๋ฐ ์ด๋ฒ์ฃผ ์์์ผ๊น์ง 5์ฃผ์ฐจ๋ฅผ ๋ง๋ฌด๋ฆฌํ๋ผ๊ณ ํ์ ์ ์ค๋ ํ๋... ๋ด์ผ ํ๋... ์ด๋ ๊ฒ ์จ์ผ๋๋ค๐๐
์ค๋์ ์ง๋ ์ฃผ ๋ฆฌ์กํธ ๋ง๋ณด๊ธฐ์ ์ด์ ๋ฐ๋ฒจ๊ณผ JSX, ์นํฉ์ ๋ํด์ ํ์ตํ๋ค.
์ผ๋จ JSX๊ฐ ๋ญ๋๊ณ ?
HTML์ฒ๋ผ ์๊ธด ๋ฌธ๋ฒ์ด๋ค.
const element = <h1>Hello, world!</h1>;
๋ญ๊ฐ ์งฌ๋ฝ๋๋ค. HTML ํ๊ทธ์ธ๋ฐ constํ ๋ณ์ element์ ๋ค์ด๊ฐ ์๋ค๋...
์ด๋ฌํ ๋ฌธ๋ฒ์ JSX๋ผ๊ณ ๋ถ๋ฅด๋ฉฐ, ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ฌธ๋ฒ ํ์ฅ์ด๋ค... HTML๊ณผ ์ ์ฌํ ๊ตฌ์กฐ๋ฅผ ๊ฐ๊ณ ์์ด์ ์ดํดํ๊ธฐ๋ ์ฝ๋ค.
ํ์ง๋ง ํด๋น ๋ฌธ๋ฒ์ ์ฌ์ฉํ๊ธฐ ์ํด์ ๋ช ๊ฐ์ง ๊ท์น์ด ์กด์ฌํ๋ค.
1. ์์ฑ์ ํญ์ ์๋ฐ์ดํ๋ก ๊ฐ์ธ์ค๋ค.
2. ํ๊ทธ๋ ํญ์ ๋ซํ์์ด์ผํ๋ค.
3. ํ์ ๋ ธ๋๋ฅผ ์์ฑํ ์ ์๋ค.
์ด๋ฐ ๊ท์น ๋ง๊ณ ๋ ๋ช๊ฐ์ง๊ฐ ๋ ์กด์ฌํ๋๋ฐ ๋ฆฌ์กํธ ๊ณต์ ๋ฌธ์์์ ํ์ธ ๊ฐ๋ฅํ๋ค.
https://ko.reactjs.org/docs/introducing-jsx.html
๋ฐ๋ฒจ์ JSX ๋ฌธ๋ฒ์ ๋ค์ํ ๋ธ๋ผ์ฐ์ ํ๊ฒฝ์์ ๋์ ๊ฐ๋ฅํ๋๋ก ๋ณํํด์ฃผ๋ ๊ธฐ๋ฅ์ ํ๋ค.
์ฌ์ค ๋ฐ๋ฒจ์ ์๋ '6TO5'๋ผ๋ ์ด๋ฆ์ ๊ฐ๊ณ ์์๋๋ฐ ES6์์ ES5๋ก ๋ฐ๊ฟ์ฃผ๋๋ค๋ ์๋ฏธ์๋ค.
์ต์ ๋ฌธ๋ฒ์ธ JSX๋ฅผ ๋ฐ๋ฒจ์ ํตํด ๋ชจ๋ ๋ธ๋ผ์ฐ์ ๊ฐ ์ฝ๊ธฐ ์ฌ์ด ES5์ฝ๋๋ก ๋ณํํด์ฃผ๊ณ ๊ฐ๋ฐ์ ์ ์ฅ์์๋ JSX ๊ฐ์ ์ต์ ๋ฌธ๋ฒ์ ์ฌ์ฉํ๋ฉด์๋ ๋ค์ํ ๋ธ๋ผ์ฐ์ ์์ ํธํ์ด ๊ฐ๋ฅํ๋๋ก ๊ตฌํํ ์ ์๊ฒ ํด์ค๋ค.
๋ฐ๋ฒจ ๊ณต์ ์ฌ์ดํธ์์๋ ์ด๋ฌํ ๋ด์ฉ์ด ํ์ธ ๊ฐ๋ฅํ๋ค.
๊ทธ๋ ๋ค๋ฉด ์นํฉ์?
์นํฉ์ ์์กด์ฑ์ ๋ถ์ํ์ฌ ๋ชจ๋์ ๋ฒ๋ค, ์ฆ ํ๋๋ก ๋ฌถ์ด์ฃผ๋ ์ญํ ์ ์ํํ๋ค. ํ๋ก์ ํธ๋ฅผ ๊ฐ๋ฐํ๋ค๋ณด๋ฉด ๋ค์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ค์ ์ฌ์ฉํ๊ฒ ๋๋๋ฐ ์ด๋ฅผ ๋น๋๋ผ๋ ๊ณผ์ ์ ํตํด ํ๋๋ก ๋ฌถ์ด์ค๋ค. ํ๋๋ก ๋ฌถ์ด์ ์ ์ง๋ณด์์ฑ์ ๋์ผ ์ ์๋ค๋ ์ฅ์ ์ด ์๋ค. ์ญ์ ๊ณต์์ฌ์ดํธ์์ ํ์ธํ ์ ์๋ค.
๊ทธ๋ ๋ค๋ฉด ๋ฆฌ์กํธ๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด ๋งค๋ฒ ์นํฉ๊ณผ ๋ฐ๋ฒจ์ ์ผ์ผํ ์ค์ ํด์ผํ ๊น?
์ญ์ ๋๋ํ ๊ฐ๋ฐ์๋ค์ด ์ด๋ฅผ ํ๋์ ๋ช ๋ น์ด๋ก ์์ฝ๊ฒ ์ค์ ํ ์ ์๊ฒ ๋ง๋ค์ด๋จ๋๋ฐ ๊ทธ๊ฒ์ ๋ฐ๋ก
create-react-app.
์ฝ๋๋ ์๋์ ๊ฐ๋ค.
npx create-react-app my-app
cd my-app
npm start
๋ฑ ์ด ํ ์ค๋ง ์์ผ๋ฉด ๊ท์ฐฎ๊ฒ ํ๋ ํ๋ ์ค์ ํ ํ์์์ด ์์ฝ๊ฒ ์ง ! ํ๊ณ ๋ง๋ค์ด์ง๋ค.
ํ์ง๋ง ๊ฐ์ฌ๋๊ป์๋ ๋ฆฌ์กํธ ๊ฐ๋ฐ์ ์์ด์ ์ ๋ช ๋ น์ด๋ง ์๋ค๊ณ ํด์ ์นํฉ๊ณผ ๋ฐ๋ฒจ์ ๋ํด ์์ธํ ์ ํ์๊ฐ ์๋ค? ์ด๊ฑด ์ ํ ์๋๋ผ๊ณ ํ์ จ๋ค. ๋ฆฌ์กํธ ๊ฐ๋ฐ์๊ฐ ๋๋ ค๋ฉด ์นํฉ๊ณผ ๋ฐ๋ฒจ์ ๋ํด์ ์ ํํ๊ฒ ์ดํดํ๊ณ ์ฌ์ฉํ ์ค ์์์ผ ๋๋ค๊ณ ์ ๋ง ๊ฐ์กฐํ์ จ๋ค. ๋๋ ๋ฆฌ์กํธ์ชฝ์ผ๋ก๋ ๊ด์ฌ์ด ๋ง์ ํธ์ ์๋์ง๋ง ๊ทธ๋๋ ๊ฐ์ธ์ ์ผ๋ก ํฅ๋ฏธ๊ฐ ์๋ ํธ์ด๋ผ์ ์ข ์์๋ณด๊ณ ์ถ๊ธด ํ๋ค. ์ฃผ๋ง์ ์๊ฐ์ด ๋๋ค๋ฉด ์กฐ๊ธ์ฉ ๊ณต๋ถํด๋ณด๊ณ ์ถ์ ์์ฌ์ ์๋ค. ํ์คํ ๋ฆฌ์กํธ๋ฅผ ๋ค์ด์ค๋๊น ํจ์ฌ ์ฌ๋ฐ๋ ๊ฑฐ ๊ฐ๋ค. ๋ฆฌ๋ทฐ๋ฅผ ์จ์ผํด์ ๊ธํ๊ฒ ์์ฒญํ ๊ฐ์ด ์์ง๋ง...
๋
ธ๋JS ๋
ธ๋JS ๋
ธ๋JS ๋
ธ๋JS ๋
ธ๋JS
"ํ ๋ฒ์ ๋๋ด๋ Node.js ์น ํ๋ก๊ทธ๋๋ฐ ์ด๊ฒฉ์ฐจ ํจํค์ง Online"์ ๋ฌด๋ฃ๋ก ํ์ฐฌ๋ฐ์ ์์ฑํ ๊ฒ์๊ธ์ ๋๋ค.