Skip to content

ssafy-anveloper/ssafy-react-practice

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

7 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

React Programming

SSAFY(์‚ผ์„ฑ ์ฒญ๋…„ ์•„์นด๋ฐ๋ฏธ) React ํŠน๊ฐ• ํ•™์Šต ์ผ์ •

์ผ์ž ํ•™์Šต ์ฃผ์ œ
2022. 8. 8 (์›”) React ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์†Œ๊ฐœ
์›น ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ์—์„œ React ์‹œ์ž‘ํ•˜๊ธฐ
2022. 8. 9 (ํ™”) React ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๋งค๋‰ด์–ผ ๊ตฌ์„ฑ
ํˆด์ฒด์ธ์œผ๋กœ React ํ”„๋กœ์ ํŠธ ์Šค์บํด๋”ฉ
2022. 8. 10 (์ˆ˜) React ํ›…(Hooks) API / Props ํƒ€์ž… ๊ฒ€์‚ฌ
React ์ปจํ…์ŠคํŠธ(Context) API / ํ…Œ๋งˆ, ์ธ์ฆ ๊ด€๋ฆฌ
2022. 8. 17 (์ˆ˜) ํด๋ผ์ด์–ธํŠธ ์‚ฌ์ด๋“œ ๋ผ์šฐํŒ… ๊ตฌ์„ฑ
๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™” (SEO) / ๋ณดํ˜ธ๋œ ๋ผ์šฐํŠธ (์ธ์ฆ)
2022. 8. 19 (๊ธˆ) Redux ์•„ํ‚คํ…์ฒ˜
React ์•ฑ์— Redux ํ†ตํ•ฉ
2022. 8. 26 (๊ธˆ) RTK ์†Œ๊ฐœ ๋ฐ ์‚ฌ์šฉ๋ฒ•
RTK Query ํ™œ์šฉ
2022. 8. 30 (ํ™”) ํ† ์ด ํ”„๋กœ์ ํŠธ
ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ (CI / CD)

์งˆ๋ฌธ/๋‹ต๋ณ€

์งˆ๋ฌธ 1

๋‹ค์Œ์— ํ˜น์‹œ axios ๋ฐฉ๋ฒ•๋„ ๋‹ค๋ค„์ฃผ์‹œ๋‚˜์š”?

๋‹ต๋ณ€ 1

๋„ต ^^ Axios ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ ์‹ค์Šต๋„ ๋‹ค๋ฃฐ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

์งˆ๋ฌธ 2-1

useCallback์˜ ์—ญํ• ์ด ํ•จ์ˆ˜์˜ ๋ฉ”๋ชจ์ด์ œ์ด์…˜์ด๋ผ๋ฉด useCallback์€ ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ฆฌ๋ Œ๋”๋ง๋ ๋•Œ ํ•จ์ˆ˜๋ฅผ ์žฌ"์ •์˜"ํ•˜๋Š” cost๋ฅผ ์ค„์—ฌ์ฃผ๋Š” ๊ฒƒ์ธ๊ฐ€์š”?

๋‹ต๋ณ€ 2-1

๋„ค. ๋ง์”€ํ•˜์‹ ๋Œ€๋กœ ํ•จ์ˆ˜๊ฐ€ ์žฌ ์ •์˜ ๋˜๋Š” ๋น„์šฉ์„ ์ค„์—ฌ์ฃผ๋ฏ€๋กœ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๊ณ , ๋‚˜์•„๊ฐ€ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ๋‹ค์‹œ ๋ Œ๋”๋ง ๋˜๋Š” ์ปดํฌ๋„ŒํŠธ๋กœ ์ธํ•ด ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์งˆ๋ฌธ 2-2

dependency๊ฐ€ ๋ฐ”๋€Œ์—ˆ๋Š”์ง€ ํŒ๋‹จํ•˜๋Š” ์‹œ๊ฐ„๋„ ํ•„์š”ํ•  ๊ฒƒ ๊ฐ™์€๋ฐ ์ด ์‹œ๊ฐ„์ด ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ์‹œ๊ฐ„๋ณด๋‹ค ์งง์•„์„œ useCallback์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ผ๊นŒ์š”?

๋‹ต๋ณ€ 2-2

๋„ค. ๋ง์”€ํ•˜์‹ ๋Œ€๋กœ ํ•จ์ˆ˜๊ฐ€ ์žฌ ์ •์˜ ๋˜๋Š” ๋น„์šฉ์„ ์ค„์—ฌ์ฃผ๋ฏ€๋กœ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๊ณ , ๋‚˜์•„๊ฐ€ ๋ถˆํ•„์š”ํ•˜๊ฒŒ ๋‹ค์‹œ ๋ Œ๋”๋ง ๋˜๋Š” ์ปดํฌ๋„ŒํŠธ๋กœ ์ธํ•ด ์„ฑ๋Šฅ์ด ์ €ํ•˜๋˜๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์งˆ๋ฌธ 2-3

๋ฆฌ์—‘ํŠธ ์ฝ”๋“œ๋ฅผ ์ฐพ์•„๋ณด๋‹ค๋ณด๋ฉด ํ•ญ์ƒ useCallback, useMemo์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋˜๋ฐ ๊ฐ•์‚ฌ๋‹˜์€ ์–ด๋–ค ๊ธฐ์ค€์œผ๋กœ ์‚ฌ์šฉ ์œ ๋ฌด๋ฅผ ๊ฒฐ์ •ํ•˜์‹œ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๋ณ€ 2-3

ํ•˜์œ„ ์ปดํฌ๋„ŒํŠธ(์˜ˆ: <Button>)์— 'ํ•จ์ˆ˜' ํƒ€์ž…์„ prop์œผ๋กœ ์ „๋‹ฌํ•ด์•ผ ํ•  ๋•Œ useCallback ํ›…์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ๋ฐ˜ํ•ด, ํ‘œ์ค€ HTML ์š”์†Œ(์˜ˆ: <button>)๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” useCallback ํ›…์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค. 2-2๋ฒˆ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์—์„œ ๋ง์”€๋“œ๋ฆฐ ๊ฒƒ์ด ์šฐ๋ ค๋˜๋Š” ์ƒํ™ฉ์ธ๋ฐ HTML ํ‘œ์ค€ ์š”์†Œ๋Š” ๊ทธ๋Ÿฌํ•œ ๋ฌธ์ œ๊ฐ€ ์—†์œผ๋ฏ€๋กœ useCallback ํ›… ์—†์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ์Šต๋‹ˆ๋‹ค. (์š”์•ฝ: ์ปดํฌ๋„ŒํŠธ์— ํ•จ์ˆ˜ ํƒ€์ž…์„ ์ „๋‹ฌํ•  ๊ฒฝ์šฐ ํ›… ์‚ฌ์šฉ / HTML ํ‘œ์ค€ ์š”์†Œ์—๋Š” ์‚ฌ์šฉ ์•ˆ ํ•จ)

์งˆ๋ฌธ 3

ํด๋ž˜์Šคํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ๋Š” this๊ฐ€ ๋งŽ์ด ๋ณด์ด๋Š” ๊ฑฐ ๊ฐ™์€๋ฐ ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ๋กœ ํ๋ฆ„์ด ๋ฐ”๋€Œ๋ฉด์„œ ์ƒ๋Œ€์ ์œผ๋กœ ์ค‘์š”ํ•ด์ง„ JS ๋ฌธ๋ฒ•์ด ์žˆ๋‚˜์š”?

๋‹ต๋ณ€ 3

JS ๋ฌธ๋ฒ•๋„ ๋ฌธ๋ฒ•์ด์ง€๋งŒ, ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ํŒจํ„ด ํ™œ์šฉ์ด ์ฃผ์ด๋ฏ€๋กœ ํ•ด๋‹น ํŒจํ„ด์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์˜คํžˆ๋ ค ๋ฌธ๋ฒ•์€ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํด๋ž˜์Šค ๋ณด๋‹ค ๊ฐ„๊ฒฐํ•˜๊ณ  ์‰ฝ์Šต๋‹ˆ๋‹ค. ^^ ๊ทธ๋Ÿผ์—๋„ ๋ช‡๊ฐ€์ง€ ์ƒ๊ฐ๋‚˜๋Š” ๊ฒƒ์„ ๋‚˜์—ดํ•˜๋ฉด '๊ตฌ์กฐ ๋ถ„ํ•ด ํ• ๋‹น', '๋‚˜๋จธ์ง€ ๋งค๊ฐœ๋ณ€์ˆ˜', 'ํ™”์‚ดํ‘œ ํ•จ์ˆ˜ ์‹', '๋ฐฐ์—ด ๋ฉ”์„œ๋“œ(mutation ํ•˜์ง€ ์•Š๋Š”)' ๋“ฑ ์ž…๋‹ˆ๋‹ค.

์งˆ๋ฌธ 4

ํด๋ฆฌํ•„์€ ๋ณดํ†ต ๋ฐ”๋ฒจ์„ ํ†ตํ•ด์„œ ์„ค์ •ํ•ด ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜์„ฑ์„ ๊ณ ๋ คํ•˜๋Š”๊ฑธ๋กœ ์•Œ๊ณ ์žˆ๋Š”๋ฐ npm์—์„œ react-app-polyfill์„ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ์‹ ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ณดํ†ต์˜ ๊ฒฝ์šฐ, ์–ด๋–ค ๋ฐฉ๋ฒ•์ด ์ข€๋” ๋ณดํŽธ์ ์ธ์ง€ CRA์—์„œ๋งŒ์˜ ํŠน์„ฑ์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์›นํŒฉ๊ณผ ๋ฐ”๋ฒจ์‚ฌ์šฉ๋ฒ•์„ ํ•„์š” ์ง๋ฌด ์—ญ๋Ÿ‰์— ๋„ฃ๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋Š”๋ฐ ํ˜„์—…์—์„œ ๋ณผ๋•Œ ์–ด๋А์ •๋„์˜ ์ดํ•ด๋„์™€ ์ง€์‹์„ ๊ฐ€์ง„ ์‹ ์ž… ํ˜น์€ ๊ฐœ๋ฐœ์ž๋ฅผ ์›ํ•˜๋Š”๊ฒƒ์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค.

๋‹ต๋ณ€ 4

๋ณดํŽธ์ ์ธ ๋ฐฉ๋ฒ•์˜ ๊ธฐ์ค€์€ ์–ด๋–ค ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค. react-app-polyfill์€ Create React App ๋„๊ตฌ์— ์ตœ์ ํ™” ๋œ ํด๋ฆฌํ•„ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด core-js, regenerator-runtime ๋“ฑ์„ ์‚ฌ์šฉํ•œ ํด๋ฆฌํ•„(@babel/polyfill์€ ๋” ์ด์ƒ ์‚ฌ์šฉ์ด ๊ถŒ์žฅ๋˜์ง€ ์•Š์Œ)์€ CRA ๋„๊ตฌ์—๋งŒ ๊ตญํ•œ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ฒ”์šฉ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  Babel, Webpack ๋“ฑ ๋„๊ตฌ์˜ ํ•„์š”์„ฑ์„ ์ดํ•ดํ•˜๊ณ , ๊ธฐ๋ณธ์ ์ธ ์‚ฌ์šฉ๋ฒ•์„ ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค. ๋„๊ตฌ ๋ณ„ ์‚ฌ์šฉ ๋ชฉ์ ๊ณผ ๋„๊ตฌ์—์„œ ์ œ๊ณตํ•˜๋Š” ์ฝ˜์…‰ ๋“ฑ์— ๋Œ€ํ•ด ๋ฐ”๋กœ ์•Œ๊ณ , ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„ ์ •๋„์˜ ๊ฒ€์ƒ‰, ๋ฐ˜์˜ ๋Šฅ๋ ฅ์ด ์š”๊ตฌ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์งˆ๋ฌธ 5

CRA๋ฅผ ํ†ตํ•ด ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ๋Š”๋ฐ ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ ์šฉํ•ด ํ•˜๊ณ ์žˆ์Šต๋‹ˆ๋‹ค. ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์— ์ฝ”๋“œ๋ฅผ ๋งž์ถ”๋Š”๊ฑด์ง€,, ์ฝ”๋“œ๋ฅผ ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋กœ ์ž˜ ์งœ๊ณ  ์žˆ๋Š”๊ฑด์ง€ ์•Œ์ง€ ๋ชปํ•ด ๋‹ต๋‹ตํ•œ๋ฐ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ• ๋•Œ ํƒ€์ž…์„ ์ ์–ด๋†“๊ณ  ์ž‘์„ฑํ•˜๋Š”์ง€, ๋˜ ํƒ€์ž…์˜ ์ˆ˜์ •์ด ์ผ์–ด๋‚˜๋Š” ์ƒํ™ฉ์—์„œ๋Š” ์–ด๋–ป๊ฒŒ ๋Œ€์ฒ˜ํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค

๋‹ต๋ณ€ 5

์งˆ๋ฌธ์€ "๋‹น์‹ ์€ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฐ€?"๋ฅผ ๋ฌผ์–ด๋ณธ ๊ฒƒ์ด๋ฏ€๋กœ ์ˆœ์ˆ˜ํ•˜๊ฒŒ ์ œ ์ž…์žฅ์—์„œ ๋‹ต๋ณ€๋“œ๋ ค ๋ด…๋‹ˆ๋‹ค. ์ˆ˜์—…์—์„œ ๋ง์”€๋“œ๋ ธ ๋“ฏ์ด ์ €๋Š” Designer์ด๊ณ , Design์€ "์„ค๊ณ„"๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์ €๋Š” ๋””์ž์ธ์„ ํ•  ๋•Œ ๋จผ์ € ์„ค๊ณ„๋ฅผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐœํ‘œ ์ž๋ฃŒ๋ฅผ ๋””์ž์ธ ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ๋‹ค์Œ ์ ˆ์ฐจ์— ๋”ฐ๋ผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋ฐœํ‘œ ์ฃผ์ œ ์ดํ•ด/์ •๋ฆฌ
  2. ๋ฐœํ‘œ ๋ฐฉ์‹ ์กฐ์‚ฌ/๋ถ„์„/์„ ํƒ
  3. ๋Ÿฌํ”„ํ•œ ๋ฐœํ‘œ ์Šฌ๋ผ์ด๋“œ ์ž‘์„ฑ(์Šคํ† ๋ฆฌํ…”๋ง, ์™€์ด์–ดํ”„๋ ˆ์ž„)
  4. ๋ฐœํ‘œ ์ž๋ฃŒ ๋ฌด๋“œ๋ณด๋“œ ์ž‘์„ฑ
  5. ๋ฐœํ‘œ ์ž๋ฃŒ์— ์‚ฌ์šฉ ๋  ํฌํ† ,ํด๋ฆฝ์•„ํŠธ ๊ฒ€์ƒ‰/๊ตฌ๋งค ๋˜๋Š” ์ง์ ‘ ์ œ์ž‘
  6. ๋ฐœํ‘œ ์Šฌ๋ผ์ด๋“œ ๊ตฌ์„ฑ(์‹œ๊ฐ ๋””์ž์ธ, ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋˜ํ•œ ์ œ์ž‘)
  7. ๋ฐœํ‘œ ์ž๋ฃŒ ๊ฒ€ํ† /๋ธŒ๋ฆฌํ•‘ ์ค€๋น„
  8. ๋ฐœํ‘œ ์ง„ํ–‰

Develop ๋˜ํ•œ "๊ตฌํ˜„์„ ์œ„ํ•œ ์„ค๊ณ„"๊ฐ€ ํ•„์š”ํ•˜์ฃ . ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๊ตฌํ˜„ํ•ด์•ผ ํ•  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ UI๋ฅผ ๋ถ„์„ํ•œ ํ›„, ๊ตฌํ˜„์— ์•ž์„œ ์–ด๋–ค props๋ฅผ ๋˜๋Š” state๋ฅผ ๊ด€๋ฆฌํ•ด์•ผ ํ•  ์ง€ ๊ณ ๋ฏผํ•ฉ๋‹ˆ๋‹ค. TypeScript๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ์œ ํ‹ธ๋ฆฌํ‹ฐ ํ•จ์ˆ˜ ๋˜๋Š” ํด๋ž˜์Šค, ์ปดํฌ๋„ŒํŠธ ์„ค๊ณ„ ๊ณผ์ •์—์„œ ์–ด๋–ค ํƒ€์ž…์ด ํ•„์š”ํ•œ ์ง€ ์„ค๊ณ„ํ•˜๊ณ  ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.

์„ค๊ณ„๋ฅผ ๊ผผ๊ผผํ•˜๊ฒŒ ์ž˜ํ•œ ๊ฒฝ์šฐ, ์˜ˆ์ธก๋Œ€๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์–ด ์ˆ˜์ •์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ์›นํˆฐ ์ž‘๊ฐ€๊ฐ€ ์ž‘ํ™” ์‹œ๊ฐ„๋ณด๋‹ค ์ฝ˜ํ‹ฐ ์ž‘์„ฑ์— ๋ณด๋‹ค ๋งŽ์€ ์‹œ๊ฐ„์„ ํ• ์• ํ•˜๋Š” ๊ฒƒ ๋˜ํ•œ ๊ฐ™์€ ์ด์œ ์ž…๋‹ˆ๋‹ค. ์ฝ˜ํ‹ฐ๋ฅผ ๋Œ€์ถฉ ๊ทธ๋ฆฌ๋ฉด ์ž‘ํ™”๋ฅผ ๊ทธ๋ฆฌ๋‹ค๊ฐ€ ์ค‘๊ฐ„์— ์—Ž๊ณ  ๋‹ค์‹œ ๊ทธ๋ ค์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. (์ˆ˜์ •... ์ˆ˜์ •... ์ˆ˜์ •...)

๊ฒฐ๋ก ์€ ํƒ€์ž… ์ˆ˜์ •์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ๊ผผ๊ผผํ•˜๊ฒŒ UI๋ฅผ ๋ถ„์„ํ•˜๊ณ , ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์ˆ˜์ •์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ ์šฐ์„  ์ฃผ์–ด์ง„ ์ƒํ™ฉ์— ๋งž์ถฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒฝํ—˜์„ ๊ฐ–๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํ†ตํ•ด ์˜ˆ์ธก๊ณผ ๋‹ฌ๋ฆฌ ์ˆ˜์ • ์ƒํ™ฉ์ด ์™œ ๋ฐœ์ƒํ•œ ๊ฒƒ์ธ์ง€ ๋ถ„์„ํ•˜๊ณ , ๋‹ค์Œ ์„ค๊ณ„ ๊ณผ์ •์—์„œ๋Š” ๊ฐ™์€ ๊ฒฝํ—˜์„ ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๋„๋ก ๋Œ€๋น„ํ•  ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์งˆ๋ฌธ 6

ํ˜น์‹œ ์˜ค๋Š˜ ๋ฐฐ์šด redux์˜ create ํ•จ์ˆ˜ ๋ง๊ณ  ๋‹ค๋ฅธ create ํ•จ์ˆ˜(createSlice, createAsyncThunk ๋“ฑ..)์€ ๋”ฐ๋กœ ์•ˆ ๋‹ค๋ฃฐ ์˜ˆ์ •์ธ๊ฐ€์š”?? ํ˜น์‹œ ์•ˆ ๋‹ค๋ฃฌ๋‹ค๋ฉด ์˜ค๋Š˜ ๋ฐฐ์šด createStore์™€ creataSlice ์˜ ์ฐจ์ด์ ์ด ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค!

๋‹ต๋ณ€ 6

๋ง์”€์ฃผ์‹  ํ•จ์ˆ˜๋Š” RTK์˜ ํ•จ์ˆ˜ ๋“ค์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ ์‹œ๊ฐ„์— ๊ทธ ํ•จ์ˆ˜๋“ค์€ ๋‹ค๋ฃฐ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ์šฐ์„  ๊ฐ„๋‹จํ•˜๊ฒŒ ์ด์•ผ๊ธฐ ๋“œ๋ ค๋ณผ๊ป˜์š”. createStore ํ•จ์ˆ˜๋Š” Redux์˜ Store๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  createSlice ํ•จ์ˆ˜๋Š” Redux๋ฅผ ๋ณด๋‹ค ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก initialState, reducer, action type/creators๋ฅผ ํ•œ ๋ฒˆ์— ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค. ^^

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published