Suspense Query - ์„ ์–ธ์„ฑ์„ ๋Œ“๊ฐ€๋กœ ์ง€๋ถˆํ•˜๋Š” Suspend ์ƒํƒœ
ReactDX

Suspense Query - ์„ ์–ธ์„ฑ์„ ๋Œ“๊ฐ€๋กœ ์ง€๋ถˆํ•˜๋Š” Suspend ์ƒํƒœ

useSuspenseQuery๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฉด ์ฝ”๋“œ๊ฐ€ ์„ ์–ธ์ ์œผ๋กœ ์ •๋ฆฌ๋œ๋‹ค๋Š” ๊ฒƒ์€, TanStack Query๋ฅผ ์“ฐ๋Š” ์‚ฌ๋žŒ๋“ค ์‚ฌ์ด์—์„œ ๊ฑฐ์˜ ์ •์„ค์ฒ˜๋Ÿผ ํ†ตํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ TanStack Query๋ž€ ์„œ๋ฒ„ ์ƒํƒœ๋ฅผ ๋‹ค๋ฃจ๋Š” ๋ฐ์ดํ„ฐ fetching ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์ „ ์ด๋ฆ„์€ Reactโ€ฆ

Turbo Cache ์™€ Github actions/cache ๋กœ CI ์‹œ๊ฐ„ -94% ๋‹จ์ถ•์‹œํ‚ค๊ธฐ
DXJavascript

Turbo Cache ์™€ Github actions/cache ๋กœ CI ์‹œ๊ฐ„ -94% ๋‹จ์ถ•์‹œํ‚ค๊ธฐ

์ด ๊ธ€์€ ์‚ฌ๋‚ด์—์„œ ์šด์˜ํ•˜๋Š” ๋‘ monorepo โ€” ๋””์ž์ธ ์‹œ์Šคํ…œ๊ณผ ๊ณตํ†ต ์œ ํ‹ธ ํŒจํ‚ค์ง€ CI์—์„œ ์ฃฝ์–ด ์žˆ๋˜ cache๋ฅผ ์‚ด๋ ค, PR ๋จธ์ง€ ๊ฒŒ์ดํŠธ๋ฅผ ๋‹จ์ถ•์‹œํ‚จ ๊ณผ์ •์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์œ ํ‹ธ ๋ ˆํฌ ๊ธฐ์ค€ 3๋ถ„ 46์ดˆ์—์„œ ์•ฝ 1๋ถ„์œผ๋กœ, ๋””์ž์ธ ์‹œ์Šคํ…œ ๋ ˆํฌ ๊ธฐ์ค€ 8~9๋ถ„์—์„œ ์•ฝ 29์ดˆ๋กœ -94% ๊นŒ์ง€โ€ฆ

๋‹น์‹ ์˜ useEffect์— ์ด๋ฆ„์„ ๋ถ™์—ฌ์•ผ ํ•˜๋Š” ์ด์œ 
ReactDX

๋‹น์‹ ์˜ useEffect์— ์ด๋ฆ„์„ ๋ถ™์—ฌ์•ผ ํ•˜๋Š” ์ด์œ 

useEffect์— ์ด๋ฆ„์„ ๋ถ™์—ฌ์•ผ ํ•˜๋Š” ์ด์œ 

Compound Component ๋ถ€ํ„ฐ Headless Pattern๊นŒ์ง€ - (3)
ReactDX

Compound Component ๋ถ€ํ„ฐ Headless Pattern๊นŒ์ง€ - (3)

์ด์ „ ๋‘ ๊ธ€์—์„œ Compound Component์˜ ๊ธฐ๋ณธ ๊ตฌํ˜„๊ณผ ์œ ์—ฐ์„ฑ์„ ๋†’์ด๋Š” ์‹ฌํ™” ๊ธฐ๋ฒ•์„ ๋‹ค๋ค˜์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” Compound์˜ ๋งˆ์ง€๋ง‰ ํ•œ๊ณ„์ธ style ์ข…์† ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” Headless ํŒจํ„ด๊ณผ, ๋‘ ํŒจํ„ด์„ ๊ฒฐํ•ฉํ•œ ์ตœ์ข… ํ˜•ํƒœ์ธ Radix UI์˜ ๋‚ด๋ถ€ ์„ค๊ณ„๋ฅผ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.

Compound Component ๋ถ€ํ„ฐ Headless Pattern๊นŒ์ง€ - (2)
ReactDX

Compound Component ๋ถ€ํ„ฐ Headless Pattern๊นŒ์ง€ - (2)

์ด์ „ ๊ธ€์—์„œ Context API ๊ธฐ๋ฐ˜์˜ Compound Component๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ , Select, Accordion, Tabs, ToggleGroup์— ๊ฐ™์€ ๊ณต์‹์„ ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” ๊ธฐ๋ณธ ํŒจํ„ด๋งŒ์œผ๋กœ ํ•ด๊ฒฐ๋˜์ง€ ์•Š๋Š” ์„ธ ๊ฐ€์ง€ ํ•œ๊ณ„์™€, ๊ฐ๊ฐ์„ ๋„˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ฒ•์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

Compound Component ๋ถ€ํ„ฐ Headless Pattern๊นŒ์ง€ - (1)
ReactDX

Compound Component ๋ถ€ํ„ฐ Headless Pattern๊นŒ์ง€ - (1)

React component๋ฅผ ์„ค๊ณ„ํ•  ๋•Œ props๊ฐ€ ๋์—†์ด ๋Š˜์–ด๋‚˜๋Š” ๋ฌธ์ œ๋ฅผ ๊ฒช์–ด๋ณธ ์ ์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” ๊ทธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” Compound Component Pattern์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.