๊ณต์‚ผ
article thumbnail


๐Ÿ’ฌ ๋“ค์–ด๊ฐ€๋ฉฐ

์ด์ œ๋Š” ๊ณต๋ถ€ํ•˜๊ณ  ์ •๋ฆฌํ–ˆ๋˜ ์ž๋ฃŒ๋ฅผ ํ™•์ธํ•  ๋•Œ, ๋…ธ์…˜, ํ•œ๊ธ€ํŒŒ์ผ๋ณด๋‹ค ๋ธ”๋กœ๊ทธ์— ๋จผ์ € ๋“ค์–ด์˜จ๋‹ค. 

 

์˜ค๋žœ๋งŒ์— ํ™˜๊ฒฝ๊ตฌ์„ฑ๋ถ€ํ„ฐ ํ•ด๋ณผ๋ ค๊ณ ํ•˜๋‹ˆ ํ—ท๊ฐˆ๋ฆฌ๋Š”๊ฒŒ ์ƒ๊ฐ๋ณด๋‹ค ์žˆ์–ด ์กฐ๊ธˆ์”ฉ ์ •๋ฆฌํ•ด๋ณด๋ ค ํ•œ๋‹ค!!

 

 

 

CRA ์„ค์น˜

CRA๋Š” ์„ค์น˜ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ๊ต‰์žฅํžˆ ํŽธ๋ฆฌํ•˜๋‹ค. 

 

npx create-react-app ํ”„๋กœ์ ํŠธ์ด๋ฆ„

์„ ์ ์œผ๋ฉด ํ˜„์žฌ ํด๋” ์•„๋ž˜์— ํ”„๋กœ์ ํŠธ CRA ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์ด ์ƒ๊ธด๋‹ค. 

 

๊ทธ๋Ÿผ ์ด๋Ÿฐ์‹์˜ ํด๋”์™€ ํŒŒ์ผ๋“ค์ด ๊ตฌ์„ฑ๋œ ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

์˜ค๋Š˜์€ ๋งŽ์€ ์ž‘์—…์„ ํ•˜์ง€ ์•Š๊ณ  ํ•„์š”ํ•œ ํ™”๋ฉด๋งŒ ๊ตฌ์„ฑํ•  ๊ฒƒ์ด๋‹ค. 

 

 

์ด์ „์— ํ•ด๋ดค๋˜ ๊ฒƒ ์ฒ˜๋Ÿผ react-router๋ฅผ ์ด์šฉํ•˜์—ฌ page๋“ค์„ ๊ด€๋ฆฌํ•  ์ƒ๊ฐ์ด๋‹ค. 

 

src ํŒŒ์ผ ์ •๋ฆฌ

๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„  ๋จผ์ € ํ•„์š”์—†๋Š” ํŒŒ์ผ๋“ค์„ ์ง€์›Œ๋ณผ ์˜ˆ์ •์ด๋‹ค. 

 

App.css , App.js, index.css, index.js

๋“ฑ์˜ ํŒŒ์ผ๋“ค์„ ์ œ์™ธํ•˜๊ณ  ๋ชจ๋‘ ์ง€์› ๋‹ค. 

 

๊ตฌ์กฐ๋Š” index.js ์—์„œ app.js๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ํ˜•์‹์œผ๋กœ ๋˜์–ด์žˆ๋‹ค. 

 

 

์ดˆ๊ธฐ์— ๋ฆฌ์•กํŠธ ์•„์ด์ฝ˜์ด ๋Œ์•„๊ฐ€๋Š” ํ™”๋ฉด์ด ๋‚˜์˜ค๊ฒŒ ์„ค์ •๋˜์–ด์žˆ๋Š”๋ฐ, ํ•„์š”์—†์œผ๋‹ˆ๊นŒ ๋ชจ๋‘ ์ง€์šฐ๊ณ 

 

react-router๋ฅผ ์„ค์น˜ํ•˜์—ฌ  ํ•„์š”ํ•œ ํŽ˜์ด์ง€๋“ค์„ ๋นจ๋ฆฌ ๊ตฌ์„ฑํ•ด๋ณด์ž. 

 

npm install react-router-dom

 

์„ ์ด์šฉํ•˜๋ฉด ๊ธˆ๋ฐฉ ์„ค์น˜๊ฐ€ ๋˜๊ณ  ์„ธํŒ…์€ ๊ฐœ์ธ์ž์œ ๋‹ค.

 

 

์ถ”๊ฐ€์ ์ธ ์„ธํŒ… (ํ™”๋ฉด๊ตฌ์„ฑ)

์„ค์น˜๋ฅผ ํ•˜๋Š”๋™์•ˆ ์ฝ”๋“œ๊ฐ€ ๋‹จ์ •ํ•œ ๊ฒƒ์„ ์ข‹์•„ํ•˜๊ธฐ๋•Œ๋ฌธ์— ํ”„๋ฆฌํ‹ฐ์–ด ์™€ eslint๋ฅผ ์„ค์น˜ํ•ด ์ฃผ์—ˆ๋‹ค. 

 

์˜ค๋žœ๋งŒ์— ํ™˜๊ฒฝ๊ตฌ์„ฑ์„ ํ•˜๋‹ค๋ณด๋‹ˆ ์ƒ๊ฐ๋ณด๋‹ค ๋ง‰ํžˆ๋Š” ๋ถ€๋ถ„์ด ์žˆ์—ˆ์ง€๋งŒ; ์—ญ์‹œ ๋ชจ๋‘ ๋‚˜์˜์ž˜๋ชป์ด์—ˆ๋‹ค. 

 

 

์–ด์ฐŒ๋˜์—ˆ๋“  ๋ชจ๋“  ํŽ˜์ด์ง€๊ฐ€ ์—ฐ๊ฒฐ๋˜๋Š”๊ฒƒ์„ ํ™•์ธํ•˜๊ณ  ๋งˆ๋ฌด๋ฆฌ ํ–ˆ๋‹ค!

 


ํ•˜์–€ background ์— ์—ฐ๊ฒฐ๋œ ํ™”๋ฉด ๋ชจ์Šต

 

profile

๊ณต์‚ผ

@g_three

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!