โ˜•

4๋ฒˆ์งธ ์ปคํ”ผ์ฑ—

Type
โ˜•๏ธ ์ปคํ”ผ์ฑ—
Date
Mar 5, 2023 15:00

์งˆ๋ฌธ ๋‚จ๊ฒจ์ฃผ์„ธ์š”

๋ฉ˜ํ† ๋‹˜์€ ๋…ํ•™์„ ์–ด๋–ป๊ฒŒ ํ•˜์…จ๋‚˜์š” (๋ฐ๋ธŒ์ฝ”์Šค ๋๋‚˜๊ณ  ๋ญํ• ์ง€, ์–ด๋–ป๊ฒŒ ๊ณต๋ถ€ํ• ์ง€ ๊ณ ๋ฏผ์ž…๋‹ˆ๋‹ค)
  • ๊ธฐ๋ณธ์ ์ธ CS๋Š” ํ•™๊ต
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ํ˜ผ์ž ๊ณ„์† ๊ณต๋ถ€ํ•˜๊ณ  ์ž์ฃผ ํ’€๊ธฐ
  • ๋‰ด์Šค๋ ˆํ„ฐ๋‚˜ ๋ธ”๋กœ๊ทธ, ์œ ๋ฐ๋ฏธ ๊ฐ•์˜๋กœ ์›น ๋…ํ•™โ€ฆ!
์ทจ์—… ์ค€๋น„ ์–ด๋А์ •๋„ ํ•˜์‹œ๊ณ  ์ทจ์—…ํ•˜์…จ๋‚˜์š”? (์ทจ์ค€ ๊ธฐ๊ฐ„, ๊ณต๋ถ€๋Ÿ‰ ๋“ฑ)
  • ๋Œ€๊ธฐ์—… SI๋Š” ๊ฑฐ์˜ ์ฝ”ํ…Œ + ์ธ์„ฑ ๋ฉด์ ‘..?
  • ์ฝ”ํ…Œ ํ•„์ˆ˜
  • ํฌํด์€ ํ‹ˆํ‹ˆํžˆโ€ฆ
  • ์ž์†Œ์„œ, ํฌํด, ๊ณผ์ œ๋ฅผ ์ž˜ ์ด์šฉํ•ด์„œ (์ž˜ ํ•œ ๋ถ€๋ถ„, ์–ดํ•„ํ•  ๋ถ€๋ถ„๋งŒ ๋„ฃ๊ธฐ) ์งˆ๋ฌธ ์œ ๋„
ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ์—์„œ string | undefined ๊ฐ’์ผ ๋•Œ string๋ฉ”์„œ๋“œ ์“ฐ๋ฉด ๋นจ๊ฐ„์ค„ ๋‚˜๋Š” ๊ฒฝ์šฐ ํƒ€์ž… ๊ฐ€๋“œ ๋ง๊ณ  as string << ์ด๋Ÿฐ ํ˜•ํƒœ๋กœ ์จ๋„ ๊ดœ์ฐฎ๋‚˜์š”?
  • stringVal?.slice(0);
// ํƒ€์ž… ์„ ์–ธ const test: string = 'xx'; // ํƒ€์ž… ๋‹จ์–ธ -> ๊ผญ ํ•„์š”ํ•œ ๊ฒฝ์šฐ๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด ๊ฐ€๋Šฅํ•œ ํƒ€์ž… ์„ ์–ธ์„ ์ด์šฉํ•ด์•ผ ํ•œ๋‹ค const test = 'xx' as string;
ํ˜„์—…์—์„œ type์ด๋ž‘ interface ์ค‘ ์–ด๋–ค ๊ฑธ ๋” ๋งŽ์ด ์“ฐ๋‚˜์š”.
  • ํ˜„์žฌ๋Š” type์„ ํ†ต์ผํ•ด์„œ ์“ฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ณต์žกํ•œ ํƒ€์ž…์„ ์ •์˜ํ•  ๋•Œ type์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. โ†’ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜
  • interface๋Š” ์„ ์–ธ ๋ณ‘ํ•ฉ์„ ์ง€์› โ†’ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
// lib.d.ts
๋ฉ˜ํ† ๋‹˜์€ ๊ณ„์† ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ ํ•˜์‹ค ์ƒ๊ฐ์ด์‹ ์ง€ ๋‚˜์ค‘์— ๊ฐœ๋ฐœ ๋ถ„์•ผ ๋ฐ”๊พธ๊ณ  ์‹ถ์€์ง€ ๊ถ๊ธˆํ•ด์š”
refreshToken, accessToken์„ ์•ˆ์ „ํ•˜๊ฒŒ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๊ถ๊ธˆํ•ด์š”.
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋กœ ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ณณ์— ์ €์žฅํ•˜๊ธฐ
๋ฐ์ผ๋ฆฌ ๋ธŒ๋ฆฌํ•‘ ํŽ˜์ด์ง€์—์„œ ์ฐจํŠธ๋ฅผ ๊ทธ๋ ค์•ผ ํ•˜๋Š”๋ฐ ์ถ”์ฒœํ•˜์‹œ๋Š” ์ฐจํŠธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ๋‚˜์š”?
  • ์—๋Ÿฌ ์ผ€์ด์Šค ๋ฌธ์„œํ™”

ํ”„๋กœ์ ํŠธ ์ง„ํ–‰ ์ƒํ™ฉ ๊ณต์œ 

  • ํ˜„์žฌ ํ”„๋ก ํŠธ ๋ฐฐํฌ ์™„๋ฃŒํ•œ ์ƒํƒœ
  • API ์—ฐ๋™์€ ํšŒ์›๊ฐ€์ž…, ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ๋งŒ ๋œ ์ƒํƒœโ€ฆ