TIL_221228_ ๐ŸšฉReact App Project_๋ฐœํ‘œํšŒ

์ •์œค์ˆ™ยท2022๋…„ 12์›” 28์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
58/192
post-thumbnail

๋‚ด์ผ๋ฐฐ์›€์บ ํ”„ 4๊ธฐ ์ŠคํŒŒ๋ฅดํƒ€์ฝ”๋”ฉ React B๋ฐ˜


๐Ÿ“’ ์˜ค๋Š˜์˜ ๊ณต๋ถ€

1. React App Project_์ˆ˜์ •์ˆ˜์ •์ˆ˜์ •

์•Œ๊ฒŒ๋œ ๊ฒƒ

  • publicํด๋”์— pngํŒŒ์ผ์„ ์˜ฌ๋ฆฌ๊ณ  ์ด๋ฆ„์„ favicon.ico๋กœ ๋ฐ”๊พธ๊ณ  index์˜ ๊ธฐ์กด ico link๋ฅผ ./faviocn.ico๋กœ๋งŒ ๋ฐ”๊พธ๋‹ˆ ์‚ฌ์ดํŠธ์˜ ํƒ€์ดํ‹€์— ๋ฆฌ์•กํŠธ ๋กœ๊ณ  ๋Œ€์‹  ์šฐ๋ฆฌ๊ฐ€ ์ •ํ•œ ๋กœ๊ณ ๊ฐ€ ๋ณด์˜€๋‹ค.

  • ๋กœ๊ทธ์ธ ์•ˆ ํ•œ ์ƒํƒœ์—์„œ ๋Œ“๊ธ€ ๋“ฑ๋ก ๋ˆ„๋ฅด๋ฉด "๋กœ๊ทธ์ธ์„ ํ•ด์ฃผ์„ธ์š”." alert ๊ตฌํ˜„ ์ถ”๊ฐ€

๋ฌธ์ œ

  • ๋‹‰๋„ค์ž„๋ณ€๊ฒฝ์˜ button๋งŒ custombutton์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋‹‰๋„ค์ž„ ๋ณ€๊ฒฝ ๋ฒ„ํŠผ์ด ์™„๋ฃŒ ๋ฒ„ํŠผ์œผ๋กœ ์•ˆ ๋ฐ”๋€๋‹ค.
    • ์ผ๋‹จ ์–˜๋„ค๋งŒ style.js์—์„œ ๋”ฐ๋กœ css ์ง€์ •ํ•จ

๋ฌธ์ œ

  • ์–ด์ œ๋ถ€ํ„ฐ powershell์—์„œ yarn์œผ๋กœ ํ”„๋กœ์ ํŠธ ์ƒ์„ฑํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์˜ค๋ฅ˜

ํ•ด๊ฒฐ

  • powershell ํ”„๋กœ๊ทธ๋žจ์„ ๊ด€๋ฆฌ์ž๋กœ ์‹คํ–‰ํ•ด์„œ
    get-ExecutionPolicy ํ˜„์žฌ ๊ถŒํ•œ ์ƒํƒœ ํ™•์ธ
    • Restricted๋กœ ๋˜์–ด ์žˆ์–ด ๋กœ์ปฌ์—์„œ ์ž‘์„ฑํ•œ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์—†๋Š” ์ƒํƒœ
    • RemoteSigned : ๋กœ์ปฌ์—์„œ ๋ณธ์ธ์ด ์ƒ์„ฑํ•œ ์Šคํฌ๋ฆฝํŠธ์™€, ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š”(์„œ๋ช…๋œ) ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • Set-ExecutionPolicy RemoteSigned๋กœ ๊ถŒํ•œ ์ƒํƒœ ๋ณ€๊ฒฝ
    • yarn project ์ƒ์„ฑ ์ž˜ ๋จ

2. React App Project_๋ฐœํ‘œํšŒ

๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์€ ๊ธฐ๋Šฅ

  • 1์กฐ
    • CSS,
    • TOP ๋ฒ„ํŠผ
    • pageNation(์ผ์ • ๊ธ€ ์ˆ˜๊ฐ€ ๋„˜์–ด๊ฐ€๋ฉด ํŽ˜์ด์ง€ ์ด๋™)
    • DB์„ค๊ณ„
  • 2์กฐ
    • ๋น„๋ฐ€๋ฒˆํ˜ธ ํ•ด์‰ฌํ™”
    • ๊ธ€ ๋‚ด์šฉ ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ
    • ์œ ์ €๋งˆ๋‹ค ํ•ด๋‹น ์œ ์ €์˜ ํ”„๋กœํ•„ ๋“ค์–ด๊ฐ€๊ธฐ
    • ๊ธ€ ์“ฐ๊ธฐ ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ ๋กœ๊ทธ์ธ ์•ˆ ํ–ˆ์œผ๋ฉด ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๊ณ  ๋กœ๊ทธ์ธ์ด ๋˜๋ฉด ๋ฐ”๋กœ ๊ทธ ์ „์— ๋ˆŒ๋ €๋˜ ํŽ˜์ด์ง€(๊ธ€ ์“ฐ๊ธฐ)๋กœ ์ด๋™
  • 4์กฐ
    • ์บ๋Ÿฌ์…€ ์Šฌ๋ผ์ด๋“œ
    • ์žฅ๋ฐ”๊ตฌ๋‹ˆ ๊ธฐ๋Šฅ
  • 5์กฐ
    • ๋ณ„์  ๊ธฐ๋Šฅ
    • ์ˆ˜์ • ๋ชจ๋‹ฌ์ฐฝ
    • ๋“ฑ๋ก๋œ ๊ธ€์ด ์—†์„ ๋•Œ UI - ๋“ฑ๋ก๋œ ์ปจํ…์ธ ๊ฐ€ ์—†๋‹ค๋Š” ๋ฌธ๊ตฌ ๋“ฑ
  • 7์กฐ
    • ๊ณ„ํšํ•  ๋•Œ ํŒจํ‚ค์ง€ ๋ฒ„์ „ ๊ด€๋ฆฌ๋“ฑ๋„ ์ •ํ•˜๊ธฐ
      (removeํ•˜๊ณ  ํŒจํ‚ค์ง€ ์„ค์น˜ ์‹œ ์›ํ•˜๋Š” ๋ฒ„์ „์˜ ์ˆซ์ž๋ฅผ ๋’ค์— ๋ถ™์ด๋ฉด ๋จ)
    • ์˜ค๋ฅ˜ํ•ด๊ฒฐ๊ณผ์ • - ๊ฐœ์ธ์ด ์‚ฌ์ด๋“œ ํŽ˜์ด์ง€๋กœ ๋‚จ๊ธธ ์ˆ˜ ์žˆ๊ฒŒ
  • 9์กฐ
    • ๋ฐœํ‘œ ์ž๋ฃŒ ์ข€ ๋” ๊น”๋”ํ•˜๊ฒŒ ex. ๋ชฉ์ฐจ ๋“ฑ
    • ์‚ฌ์šฉํ•œ ๊ธฐ์ˆ  ์Šคํƒ ๊ธฐ์žฌ

์›์žฅ๋‹˜ ํ”ผ๋“œ๋ฐฑ

  • ํ˜„์‹ค์ ์ธ ํŽ˜์ด์ง€ ๊ตฌ์„ฑ, ์Šฌ๋ผ์ด๋“œ ์š”์†Œ๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์ง€๋ฃจํ•˜์ง€ ์•Š๋„๋ก ํ•ด ์คŒ
  • env ์ด์šฉ
  • ์ƒํ’ˆ๋งˆ๋‹ค ํ‰์ ์ด ์žˆ๊ณ  ํ‰์ ์ด ๋†’์€ ์ˆœ๋Œ€๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๊ธฐ๋Šฅ ์žˆ์œผ๋ฉด ์ข‹์„ ๋“ฏ
  • ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ๋ฌธ์„œ(API ๊ณต์‹ ๋ฌธ์„œ ๋“ฑ)๋ฅผ ์ž˜ ์ดํ•ดํ•˜๊ณ  ํ™œ์šฉํ•ด์•ผ ํ•œ๋‹ค. ๊ฒฐ๊ตญ ๊ทธ API๋ฅผ ๊ฐ€์ ธ๋‹ค ์“ฐ๋Š” ๊ฒƒ์ด๋‹ค!

์šฐ๋ฆฌ ์กฐ ํ”ผ๋“œ๋ฐฑ

  • ์ข‹์•„์š” ๋ฐ˜์‘์ด ์ข€ ๋Šฆ๋Š” ๊ฒƒ ํ•ด๊ฒฐํ•ด๋ณด๊ธฐ
  • ์นญ์ฐฌ ๋งค๋‹ˆ๋งค๋‹ˆ๋งค๋‹ˆ

๐Ÿšฉ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณต๋ถ€์˜ ์ค‘์š”์„ฑ(ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค)
    • ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•  ๋•Œ ๋ฐฉ๋ฒ•์„ ์ƒ๊ฐํ•ด ๋‚ด๋Š” ํž˜์„ ๊ธธ๋Ÿฌ์ฃผ๋Š”๊ฒŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ธ ๊ฒƒ ๊ฐ™๋‹ค.
    • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฏธ๋ฃจ์ง€ ๋ง๊ณ  ํ’€๊ธฐ!!
profile
ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž

0๊ฐœ์˜ ๋Œ“๊ธ€