
Suspense Query - ์ ์ธ์ฑ์ ๋๊ฐ๋ก ์ง๋ถํ๋ Suspend ์ํ
useSuspenseQuery๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ฉด ์ฝ๋๊ฐ ์ ์ธ์ ์ผ๋ก ์ ๋ฆฌ๋๋ค๋ ๊ฒ์, TanStack Query๋ฅผ ์ฐ๋ ์ฌ๋๋ค ์ฌ์ด์์ ๊ฑฐ์ ์ ์ค์ฒ๋ผ ํตํฉ๋๋ค. ์ฌ๊ธฐ์ TanStack Query๋ ์๋ฒ ์ํ๋ฅผ ๋ค๋ฃจ๋ ๋ฐ์ดํฐ fetching ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋งํฉ๋๋ค. ์์ ์ด๋ฆ์ Reactโฆ

Turbo Cache ์ Github actions/cache ๋ก CI ์๊ฐ -94% ๋จ์ถ์ํค๊ธฐ
์ด ๊ธ์ ์ฌ๋ด์์ ์ด์ํ๋ ๋ monorepo โ ๋์์ธ ์์คํ ๊ณผ ๊ณตํต ์ ํธ ํจํค์ง CI์์ ์ฃฝ์ด ์๋ cache๋ฅผ ์ด๋ ค, PR ๋จธ์ง ๊ฒ์ดํธ๋ฅผ ๋จ์ถ์ํจ ๊ณผ์ ์ ์ ๋ฆฌํฉ๋๋ค. ์ ํธ ๋ ํฌ ๊ธฐ์ค 3๋ถ 46์ด์์ ์ฝ 1๋ถ์ผ๋ก, ๋์์ธ ์์คํ ๋ ํฌ ๊ธฐ์ค 8~9๋ถ์์ ์ฝ 29์ด๋ก -94% ๊น์งโฆ

๋น์ ์ useEffect์ ์ด๋ฆ์ ๋ถ์ฌ์ผ ํ๋ ์ด์
useEffect์ ์ด๋ฆ์ ๋ถ์ฌ์ผ ํ๋ ์ด์

Compound Component ๋ถํฐ Headless Pattern๊น์ง - (3)
์ด์ ๋ ๊ธ์์ Compound Component์ ๊ธฐ๋ณธ ๊ตฌํ๊ณผ ์ ์ฐ์ฑ์ ๋์ด๋ ์ฌํ ๊ธฐ๋ฒ์ ๋ค๋ค์ต๋๋ค. ์ด ๊ธ์์๋ Compound์ ๋ง์ง๋ง ํ๊ณ์ธ style ์ข ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ Headless ํจํด๊ณผ, ๋ ํจํด์ ๊ฒฐํฉํ ์ต์ข ํํ์ธ Radix UI์ ๋ด๋ถ ์ค๊ณ๋ฅผ ๋ถ์ํฉ๋๋ค.

Compound Component ๋ถํฐ Headless Pattern๊น์ง - (2)
์ด์ ๊ธ์์ Context API ๊ธฐ๋ฐ์ Compound Component๋ฅผ ๊ตฌํํ๊ณ , Select, Accordion, Tabs, ToggleGroup์ ๊ฐ์ ๊ณต์์ ์ ์ฉํ์ต๋๋ค. ์ด ๊ธ์์๋ ๊ธฐ๋ณธ ํจํด๋ง์ผ๋ก ํด๊ฒฐ๋์ง ์๋ ์ธ ๊ฐ์ง ํ๊ณ์, ๊ฐ๊ฐ์ ๋๊ธฐ ์ํ ๊ธฐ๋ฒ์ ๋ค๋ฃน๋๋ค.

Compound Component ๋ถํฐ Headless Pattern๊น์ง - (1)
React component๋ฅผ ์ค๊ณํ ๋ props๊ฐ ๋์์ด ๋์ด๋๋ ๋ฌธ์ ๋ฅผ ๊ฒช์ด๋ณธ ์ ์ด ์์ ๊ฒ์ ๋๋ค. ์ด ๊ธ์์๋ ๊ทธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ Compound Component Pattern์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ๊ตฌํ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค.
kyu-log