GSAP ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋žœ๋”ฉํŽ˜์ด์ง€ ์ œ์ž‘ํ•˜๊ธฐ
ยท
KUIT
KUIT 6๊ธฐ ๋žœ๋”ฉํŽ˜์ด์ง€ ๐Ÿ”— https://www.konkuk-kuit.com/6/introduce0. GSAP๋ฅผ ์จ๋ณด์ž2025๋…„ 2ํ•™๊ธฐ๋ฅผ ๋งž์ดํ•˜์—ฌ, ์šด์˜์ง„์œผ๋กœ ์ฐธ์—ฌํ–ˆ๋˜ KUIT(๊ฑด๊ตญ๋Œ€ํ•™๊ต ๊ธฐํš/๊ฐœ๋ฐœ ๋™์•„๋ฆฌ)๋„ ์ด์ œ 6๊ธฐ๋ฅผ ๋งž์•„ ๋ถ€์›๋“ค์„ ๋ชจ์ง‘ํ•ด์•ผ๋˜๋Š” ์‹œ๊ธฐ๊ฐ€ ๋‹ค๊ฐ€์™”๋‹ค. ์ €๋ฒˆ 4๊ธฐ์™€ 5๊ธฐ ๋ถ€์› ๋ชจ์ง‘ ๋•Œ์—๋Š” framer-motion ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ’€ ํŽ˜์ด์ง€ ์Šคํฌ๋กค ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋žœ๋”ฉํŽ˜์ด์ง€๋ฅผ ๊ตฌํ˜„ํ–ˆ์—ˆ๋Š”๋ฐ, ์ด๋ฒˆ 6๊ธฐ ๋ชจ์ง‘ ๋•Œ ๋˜‘๊ฐ™์€ ํ…œํ”Œ๋ฆฟ์„ ํ™œ์šฉํ• ์ง€ ์•„๋‹ˆ๋ฉด ์ƒˆ๋กœ์šด ์ธํ„ฐ๋ž™์…˜์„ ๊ตฌํ˜„ํ• ์ง€ ๊ณ ๋ฏผ์ด ๋˜์—ˆ๋‹ค. 4๊ธฐ ๋žœ๋”ฉํŽ˜์ด์ง€ ๐Ÿ”— https://www.konkuk-kuit.com/4/introduceํ’€ํŽ˜์ด์ง€ ์Šคํฌ๋กค ์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ตฌํ˜„๊ธฐ ๐Ÿ”— https://quickchabun.tistory.com/131 ๋ถ€์› ๋ชจ์ง‘๊นŒ์ง€ ..
[KUIT 4๊ธฐ] ๊ฐœ๋ฐœ ๋™์•„๋ฆฌ ํšŒ์žฅ ํ›„๊ธฐ
ยท
KUIT
0. ์ œ์•ˆ๊ณผ ๊ณ ๋ฏผ๋™์•„๋ฆฌ ํšŒ์žฅ์„ ๋งก์•„๋‹ฌ๋ผ๋Š” ์ œ์•ˆ์„ ๋“ค์—ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ๋ถ€๋‹ด์Šค๋Ÿฌ์› ๋‹ค. โ€˜ํšŒ์žฅโ€™์ด๋ผ๋Š” ๋‹จ์–ด๋Š” ๋‚ด๊ฒŒ ๋„ˆ๋ฌด ์ด์งˆ์ ์œผ๋กœ ๋‹ค๊ฐ€์™”๋‹ค. ์ดˆ๋“ฑํ•™๊ต ๋•Œ ๋ช‡ ๋ฒˆ ๋ฐ˜์žฅ์„ ๋งก์•˜๋˜ ์ ์€ ์žˆ์—ˆ์ง€๋งŒ ๊ทธ๊ฑด ๊ทธ ๋•Œ ๋ฟ์ด์—ˆ๊ณ , ๋‚ด๊ฐ€ ๋‚˜์„œ๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ฒŒ ๋œ ์ดํ›„๋กœ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋Œ€ํ‘œํ•˜๋Š” ์ง์ฑ…์„ ๋งก์ง€ ์•Š์•˜์—ˆ๋‹ค. ์›น ํŒŒํŠธ์žฅ๋„ ๋‚ด๊ฐ€ ์›น ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ์ข‹์•„ํ•ด์„œ ๋งก์€ ๊ฑฐ์˜€๋‹ค๊ณ . ํšŒ์žฅ์€ ์ž์‹ ๊ฐ์ด ๋„˜์ณ์•ผํ•˜๊ณ , ๋‚จ๋“ค์„ ์„ค๋“ํ•  ์ค„ ์•Œ์•„์•ผํ•˜๊ณ , ์ฑ…์ž„์„ ์งˆ ์ค„ ์•Œ์•„์•ผํ•œ๋‹ค. ๋‚˜์—๊ฒŒ๋Š” ์—†๋Š” ์š”์†Œ๋“ค์ด์—ˆ๋‹ค. ๊ทธ๋žฌ๊ธฐ์— ์‚ฌ์‹ค ์ด๋Ÿฐ ์ œ์•ˆ์€ ๋‚˜์—๊ฒŒ ๊ธฐํšŒ๊ธฐ๋„ ํ–ˆ๋‹ค. ์•„๋งˆ ๋‹ค์‹œ๋Š” ์˜ค์ง€ ์•Š์„ ๊ธฐํšŒ. ํšŒ์žฅ์„ ๋งก์œผ๋ฉด ๋” ์„ฑ์ˆ™ํ•œ ๋‚ด๊ฐ€ ๋  ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ. ์ž๋ฆฌ๊ฐ€ ์‚ฌ๋žŒ์„ ๋ฐ”๊พผ๋‹ค๋Š” ๋ป”ํ•œ ๋ง์„ ํ•œ ๋ฒˆ ๋ฏฟ์–ด๋ณผ๊นŒ. โ€˜๋‚ด๊ฐ€ ๋ชจ๋“  ๊ฑธ ๋ง์ณ๋ฒ„๋ฆฌ๋ฉด ์–ด๋–กํ•˜์ง€?โ€™๋ผ๋Š” ์ƒ๊ฐ์ด..
[kuit_onboarding] ํ’€ํŽ˜์ด์ง€ ์Šคํฌ๋กค ์• ๋‹ˆ๋ฉ”์ด์…˜ ๊ตฌํ˜„ํ•˜๊ธฐ(Framer-motion)
ยท
KUIT
0. ํ’€ํŽ˜์ด์ง€ ์Šคํฌ๋กค ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค.KUIT ์˜จ๋ณด๋”ฉ ํŽ˜์ด์ง€๋ฅผ ์–ด๋–ป๊ฒŒ ๋งŒ๋“ค๊นŒ ๊ณ ๋ฏผ์„ ์‹œ์ž‘ํ–ˆ์„ ๋•Œ, ๊ฐ€์žฅ ๋จผ์ € ๋– ์˜ฌ๋ž๋˜ ๊ฒƒ์ด ํ’€ํŽ˜์ด์ง€ ์Šคํฌ๋กค ์• ๋‹ˆ๋ฉ”์ด์…˜์ด์—ˆ๋‹ค. ์Šคํฌ๋กค ํ•œ ๋ฒˆ ๋‚ด๋ฆฌ๋ฉด ํ™”๋ฉด์ด ํ•˜๋‚˜์”ฉ ๋‚ด๋ ค๊ฐ€๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค. PC์—์„œ ํœ ๋กœ ์Šคํฌ๋กค์„ ํ•˜๊ฑฐ๋‚˜, ๋ชจ๋ฐ”์ผ๋กœ ์œ„๋กœ ์Šค์™€์ดํ”„๋ฅผ ํ•˜๋ฉด ํ™”๋ฉด์ด ๋ฐ”๋€Œ๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค. fullPage.js์™€ ๊ฐ™์€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์“ฐ๋Š” ๊ฒƒ์„ ๋จผ์ € ๊ณ ๋ คํ•ด๋ดค์ง€๋งŒ, ๋ผ์ด์„ผ์Šค ๋น„์šฉ์ด ์žˆ๋‹ค๋Š” ๋ง์„ ๋“ฃ๊ณ (๋น„์˜๋ฆฌ๋ฉด ๋ฌด๋ฃŒ๋ผ๊ณ  ํ•˜๊ธด ํ•˜์ง€๋งŒ) ํฌ๊ธฐํ–ˆ๋‹ค. ๊ทธ ๋Œ€์‹  Framer-motion์„ ์‚ฌ์šฉํ•ด์„œ ํ•œ ๋ฒˆ ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ๋กœ ํ–ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ํ•ด์•ผํ• ์ง€ ๊ฐ์€ ์ž˜ ์žกํžˆ์ง„ ์•Š์•˜์ง€๋งŒ, ๋‚ด๊ฒŒ๋Š” Claude๊ฐ€ ์žˆ์œผ๋‹ˆ๊นŒ. ๊ณ„์† ์งˆ๋ฌธํ•˜๊ณ , ์ˆ˜์ •ํ•˜๊ณ . ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค๊ธฐ๊นŒ์ง€ ๋ฐ˜๋ณตํ–ˆ๋‹ค..
[KUIT] 2024-1 ์›น ํŒŒํŠธ์žฅ ํ›„๊ธฐ
ยท
KUIT
0. ๋„ค? ์ œ๊ฐ€ ํŒŒํŠธ์žฅ์ด์š”?์˜ฌํ•ด 1์›” ๋ง์ด์—ˆ์„ ๊ฒƒ์ด๋‹ค. ๋‚ ์”จ๋Š” ๊ฝค๋‚˜ ์ถ”์› ๊ณ , ๋ด„์ด ์˜จ๋‹ค๋Š” ๊ฒƒ์ด ์ƒ์ƒ์ด ๋˜์ง€ ์•Š์•˜๋‹ค. ๋‚˜๋Š” ๋™์•„๋ฆฌ์—์„œ ์›น ํ”„๋ก ํŠธ์—”๋“œ๋กœ ์ฐธ์—ฌํ•œ ํ”„๋กœ์ ํŠธ ์ž‘์—…์„ ํ•˜๋ฉฐ ์‹œ๊ฐ„์„ ๋ณด๋‚ด๊ณ  ์žˆ์—ˆ๋‹ค. ๋А์Šจํ–ˆ์ง€๋งŒ ์•„์˜ˆ ๋†€์ง€๋Š” ์•Š์•˜๋˜, ์กฐ๊ธˆ์€ ์—ฌ์œ ๋กœ์› ๋˜ ์ˆœ๊ฐ„์ด์—ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค๊ฐ€ ๋””์Šค์ฝ”๋“œ๋กœ ์—ฐ๋ฝ์ด ์™”๋‹ค. ๋™์•„๋ฆฌ ์ฐจ๊ธฐ ํšŒ์žฅ์ด ๋˜๋Š” ์นœ๊ตฌ์˜€๋‹ค. ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด, ๊ทธ๋ฆฌ๊ณ  ๋จธ์ง€ ์•Š์•„ ์ง„ํ–‰๋  ๋‹ค์Œ ํ•™๊ธฐ ์ˆ˜๊ฐ• ์‹ ์ฒญ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์•˜๋‹ค. ๊ทธ๋Ÿฌ๋‹ค ๊ฐ‘์ž๊ธฐ, ๋‚˜๋ณด๊ณ  ๋‹ค์Œ ํ•™๊ธฐ ์›น ํŒŒํŠธ์žฅ์„ ํ•  ์ƒ๊ฐ์ด ์—†๋ƒ๊ณ  ๋ฌผ์–ด๋ดค๋‹ค. ์Œ?์ฃผ๊ด€์ ์œผ๋กœ, ์•„๋‹ˆ ๊ฐ๊ด€์ ์œผ๋กœ๋„ ๋‚ด๊ฐ€ ์›น ๋ถ€์› ์ค‘์—์„œ ํŒŒํŠธ์žฅ์„ ๋งก์„๋งŒํผ ์‹ค๋ ฅ์ด ์ข‹์•˜๋ƒ๊ณ  ๋ฌผ์–ด๋ณธ๋‹ค๋ฉด, ์•„๋‹ˆ๋ผ๊ณ  ๋‹ตํ•  ์ˆ˜ ์žˆ๋‹ค. ํ›จ์”ฌ ๋…ผ๋ฆฌ์ ์ด๊ณ  ์ฝ”๋”ฉ ์ž˜ํ•˜๋Š” ์นœ๊ตฌ๋“ค์˜ ์–ผ๊ตด์ด ์Šค์ณ์ง€๋‚˜๊ฐ”๋‹ค. ์™œ ๊ฐ‘์ž๊ธฐ ๋‚˜ํ•œํ…Œ ์ด๋Ÿฐ ๊ธฐ..
[KUIT] 10์ฃผ์ฐจ ๋ณด์ถฉ - ํ† ํฐ ์ €์žฅ ์œ„์น˜, ์„ธ์…˜ ์ธ์ฆ ๋ฐฉ์‹๊ณผ JWT, .env ํŒŒ์ผ
ยท
KUIT
์•„๋ž˜ ๊ธ€์€ KUIT ์›น ๋ถ€์›๋ถ„๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ์ž‘์„ฑํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.Access Token๊ณผ Refresh Token์€ ์–ด๋””์— ์ €์žฅํ•ด์•ผํ• ๊นŒ?๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ณ€์ˆ˜๋Š” ๋„ค ๊ฐ€์ง€ ๊ณต๊ฐ„์— ์ €์žฅ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.์ฟ ํ‚ค๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€์„ธ์…˜์Šคํ† ๋ฆฌ์ง€๋ฉ”๋ชจ๋ฆฌ์ด ๋•Œ ๋ฉ”๋ชจ๋ฆฌ์— ๊ฐ’์„ ์ €์žฅํ•˜๋ ค๋ฉด ์›น์•ฑ์˜ ๋กœ์ปฌ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ’์„ ์ €์žฅํ•ด์•ผโ†’ ์ด ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋ฉด ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋กœ ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅโ†’ ๋˜ ํ•˜๋‚˜ ๊ธฐ์–ตํ•ด์•ผ ํ•  ํŠน์ง•์€ ์ƒˆ๋กœ๊ณ ์นจ์„ ํ•˜๋ฉด ๋‚ด๋ถ€ ๋ณ€์ˆ˜๊ฐ€ ์ดˆ๊ธฐํ™”๋จ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋กœ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅํ•œ ์ฟ ํ‚ค, ๋กœ์ปฌ์Šคํ† ๋ฆฌ์ง€, ์„ธ์…˜์Šคํ† ๋ฆฌ์ง€โ†’ XSS ๊ณต๊ฒฉ์— ์ทจ์•ฝ(๋‹ค๋งŒ ์ฟ ํ‚ค์˜ ๊ฒฝ์šฐ HttpOnly ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๋ฉด, ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๋Š” ์ฟ ํ‚ค ์ƒ์„ฑ ๊ฐ€๋Šฅ) ์ถœ์ฒ˜: https://velog.io/@iamtaehoon/sagah Refresh Token โ†’ HttpOnly..
[KUIT] 9์ฃผ์ฐจ ์›Œํฌ๋ถ ๋ณด์ถฉ - API endpoint, Axios์™€ Fetch์˜ ์ฐจ์ด, GraphQL
ยท
KUIT
์•„๋ž˜ ๊ธ€์€ KUIT ์›น ๋ถ€์›๋ถ„๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ์ž‘์„ฑํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.API endpoint์˜ ๋œป์€?โ†’ ์š”์ฒญ์„ ๋ณด๋‚ด๊ณ ์žํ•˜๋Š” URLAxios์™€ Fetch์˜ ์ฐจ์ด1. ์—๋Ÿฌ ์ฒ˜๋ฆฌaxios์™€ fetch๋Š” ๋‘˜ ๋‹ค Promise๋ฅผ ์ด์šฉํ•ด ๋น„๋™๊ธฐ ์š”์ฒญ์„ ์ฒ˜๋ฆฌ axios: ๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ฑฐ๋‚˜, HTTP ์ƒํƒœ์ฝ”๋“œ๊ฐ€ 200~299๊ฐ€ ์•„๋‹ˆ๋ฉด Promise๋ฅผ reject ์‹œfetch: ๋„คํŠธ์›Œํฌ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์„ ๋•Œ๋งŒ Promise๋ฅผ reject-> axios์ฒ˜๋Ÿผ ์ƒํƒœ ์ฝ”๋“œ๊ฐ€ 200~299 ์‚ฌ์ด๊ฐ€ ์•„๋‹ ๋•Œ๋„ ์—๋Ÿฌ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, Response.ok๋ฅผ ํ™œ์šฉํ•ด์•ผ  2. ํ—ค๋”axios๋Š” ์š”์ฒญ ํ—ค๋”์— โ€˜Content-Type: application/json์„ ์ž๋™์œผ๋กœ ์ถ”๊ฐ€(fetch๋Š” ์ง์ ‘ ์ถ”๊ฐ€ํ•ด์•ผ) ๋ธŒ๋ผ์šฐ์ € ํ™˜๊ฒฝ์—์„œ Content..
[KUIT] 8์ฃผ์ฐจ ์›Œํฌ๋ถ ๋ณด์ถฉ - ์ „์—ญ ์ƒํƒœ ๊ด€๋ฆฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ •๋ฆฌ
ยท
KUIT
์ƒํƒœ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ์ ‘๊ทผ ๋ฐฉ์‹์€ ํฌ๊ฒŒ 3๊ฐœ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.Flux (Redux, Zustand)Proxy (Mobx, Valtio)Atomic (Jotai, Recoil)(์ถœ์ฒ˜: https://velog.io/@ggong/์ƒํƒœ-๊ด€๋ฆฌ๋ฅผ-์œ„ํ•œ-๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ-jotai) 1. FLUX ๋ฐฉ์‹(์ด๋ฏธ์ง€ ์ถœ์ฒ˜: https://velog.io/@alskt0419/FLUX-%EC%95%84%ED%82%A4%ED%85%8D%EC%B3%90%EB%9E%80) FLUX๋Š” Facebook์—์„œ ๊ฐœ๋ฐœํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์•„ํ‚คํ…์ฒ˜์ด ํŒจํ„ด์€ ํด๋ผ์ด์–ธํŠธ-์‚ฌ์ด๋“œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋ฉฐ, ํŠนํžˆ ๋‹จ์ผ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์œ ์šฉํ•˜๋‹ค.FLUX๋Š” ๋‹ค์Œ ๋„ค ๊ฐ€์ง€ ์ฃผ์š” ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๊ตฌ์„ฑ:Dispatcher: ๋ชจ๋“  ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ด€๋ฆฌํ•˜๋Š” ์ค‘์•™ ..
[KUIT] 7์ฃผ์ฐจ ์›Œํฌ๋ถ ๋ณด์ถฉ
ยท
KUIT
์ด ๊ธ€์€ KUIT Web ๋ถ€์›๋ถ„๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ์“ด ๊ธ€์ž…๋‹ˆ๋‹ค.1. Link์™€ useNavigatea ํƒœ๊ทธ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ Link ์ปดํฌ๋„ŒํŠธ๋„ ์ง€์ •ํ•œ ๊ฒฝ๋กœ๋กœ ๋ฐ”๋กœ ์ด๋™์„ ์‹œ์ผœ์ค€๋‹ค.a ํƒœ๊ทธ์™€ Link ์ฐจ์ดa : ์™ธ๋ถ€ ํ”„๋กœ์ ํŠธ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒฝ์šฐLink : ํ”„๋กœ์ ํŠธ ๋‚ด์—์„œ ํŽ˜์ด์ง€ ์ „ํ™˜ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€. Linkํด๋ฆญ ์‹œ ๋ฐ”๋กœ ์ด๋™ํ•˜๋Š” ๋กœ์ง ๊ตฌํ˜„ ์‹œ์— ์‚ฌ์šฉex) ์ƒํ’ˆ ๋ฆฌ์ŠคํŠธ์—์„œ ์ƒ์„ธ ํŽ˜์ด์ง€ ์ด๋™ ์‹œLink๋ฅผ ์‚ฌ์šฉํ•œ ๊ฒฝ์šฐ์—๋Š” ๋ Œ๋”๋ง ๋œ ์ปดํฌ๋„ŒํŠธ์˜ state๊ฐ€ ์œ ์ง€๋˜์–ด SPA๋กœ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ์Œto๋ผ๋Š” ์†์„ฑ์„ ํ†ตํ•ด ์ด๋™ํ•  ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•œ๋‹ค๋Š” ์ ์€ a ํƒœ๊ทธ์™€ ๋น„์Šทํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ํ•ด๋‹น ๋งํฌ๋กœ ์ด๋™ํ•˜๋Š” ๋Œ€์‹  ์— ์ง€์ •๋œ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ Œ๋”๋งv6๋ถ€ํ„ฐ๋Š” Link๋กœ props๋ฅผ ์ „๋‹ฌํ•˜์ง€ ๋ชปํ•จ๋‚˜. useNavigateํŽ˜์ด์ง€ ์ „ํ™˜ ์‹œ ์ถ”๊ฐ€๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š” ..
[KUIT] 6์ฃผ์ฐจ ์›Œํฌ๋ถ ๋ณด์ถฉ
ยท
KUIT
์ด ๊ธ€์€ KUIT Web ๋ถ€์›๋ถ„๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ์“ด ๊ธ€์ž…๋‹ˆ๋‹ค.1. React Hook์ด๋ž€?ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ์—์„œ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๊ทœ์น™1. ์ตœ์ƒ์œ„์—์„œ๋งŒ Hook์„ ํ˜ธ์ถœํ•ด์•ผํ•œ๋‹ค.โ†’ ๋ฐ˜๋ณต๋ฌธ์ด๋‚˜ ์กฐ๊ฑด๋ฌธ ํ˜น์€ ์ค‘์ฒฉ๋œ ํ•จ์ˆ˜ ๋‚ด์—์„œ Hook์„ ํ˜ธ์ถœํ•˜๋ฉด ์•ˆ๋œ๋‹ค. ๊ทœ์น™2. ๋ฆฌ์•กํŠธ ํ•จ์ˆ˜ ๋‚ด์—์„œ๋งŒ Hook์„ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค.โ†’ Hook์€ ์ผ๋ฐ˜์ ์ธ js ํ•จ์ˆ˜์—์„œ๋Š” ํ˜ธ์ถœํ•˜๋ฉด ์•ˆ๋œ๋‹ค. ์ถœ์ฒ˜: https://choijying21.tistory.com/60 React Hooks = ๋…๋ฆฝ์ ์ธ state ๋ฐ์ดํ„ฐ ์กฐ์ž‘ API useState = ๋…๋ฆฝ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ• ๊ฑฐ์•ผuseEffect = ๋…๋ฆฝ์ ์œผ๋กœ side-effect๋ฅผ ๊ด€๋ฆฌํ• ๊ฑฐ์•ผuseMemo = ๋…๋ฆฝ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ์บ์‹ฑ์„ ๊ด€๋ฆฌํ• ๊ฑฐ์•ผuseCallback = ..
[KUIT] 6์ฃผ์ฐจ ์‹ค์Šต ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง
ยท
KUIT
์ด ๊ธ€์€ KUIT Web ๋ถ€์›๋ถ„๋“ค์„ ๋Œ€์ƒ์œผ๋กœ ์“ด ๊ธ€์ž…๋‹ˆ๋‹ค.6์ฃผ์ฐจ ์˜์ƒ์„ ์˜ฌ๋ฆฌ๊ณ  ๋‚˜์„œ, OOO ํŒŒํŠธ์žฅ๋‹˜์ด ์ œ๊ฐ€ ์˜ฌ๋ฆฐ ์ฝ”๋“œ๋“ค์„ ๋ฆฌํŒฉํ† ๋งํ•ด์ฃผ์…จ์Šต๋‹ˆ๋‹ค XD๊ทธ๋ฆฌ๊ณ  ํŒŒํŠธ์žฅ๋‹˜์ด ์–ด๋–ค ๋ถ€๋ถ„์ด ๋ฆฌํŒฉํ† ๋งํ•ด์ฃผ์…จ๋Š”์ง€ ์ „๋ถ€ ๋น„๊ต ๋ถ„์„ํ•ด์„œ ์•Œ๋ ค์ฃผ์…จ์Šต๋‹ˆ๋‹ค!! ๊ทธ๋Ÿฌ๋ฉด ์ฝ”๋“œ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ฐ”๋€Œ์—ˆ๋Š”์ง€, ์ „ํ›„ ์ฝ”๋“œ๋“ค์„ ๋น„๊ตํ•ด๋ณด๋ฉด์„œ ๊ฐ™์ด ์‚ดํŽด๋ณผ๊นŒ์š”? 1. InputBar ์ปดํฌ๋„ŒํŠธ์— product props๋ฅผ ๋‚ด๋ ค์ฃผ๋Š” ์ด์œ ?๋น„์–ด์žˆ๋Š” product ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ด๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐ’์„ ์ฑ„์›Œ์ฃผ๋ ค๊ณ  ๋งŒ๋“  ๊ฒƒ ๊ฐ™์€๋ฐ, ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ™•์žฅ์— ์œ ์—ฐํ•˜์ง€ ๋ชปํ•˜๋‹ค.๊ตฌํ˜„์ฒด๊ฐ€ ์•„๋‹ˆ๋ผ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•˜๋‹ค(๊ฐ์ฒด์ง€ํ–ฅ ๊ธฐ๋ณธ ์›์น™) ๊ทธ๋ฆฌ๊ณ  ์ด ๊ตฌํ˜„์ฒด๋ฅผ FilterableProductTable์—์„œ ์ƒ์„ฑํ•ด์„œ ๋‚ด๋ ค์ค„ ์ด์œ ๊ฐ€ ์—†์–ด๋ณด์ธ๋‹ค. ์‘์ง‘๋„ ์ธก๋ฉด์—์„œ In..