๋ด์ฅ React API
Hook๊ณผ ์ปดํฌ๋ํธ ์ธ์๋ react
ํจํค์ง๋ ์ปดํฌ๋ํธ๋ฅผ ์ ์ํ๋๋ฐ ์ ์ฉํ ๋ช ๊ฐ์ง API๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ด ํ์ด์ง๋ ์ต์ React API๋ฅผ ๋ชจ๋ ๋์ดํฉ๋๋ค.
act
๋ฅผ ํตํด ํ ์คํธ์์ ๋ ๋๋ง์ด๋ ์ํธ์์ฉ์ ๊ฐ์ธ์ ๊ด๋ จ๋ ์ ๋ฐ์ดํธ๊ฐ ๋ชจ๋ ์ฒ๋ฆฌ๋ ๋ค์ ๊ฒ์ฆํฉ๋๋ค.cache
๋ฅผ ํตํด ๊ฐ์ ธ์จ ๋ฐ์ดํฐ๋ ์ฐ์ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์บ์ฑํฉ๋๋ค.captureOwnerStack
์ ํตํด ๊ฐ๋ฐ ํ๊ฒฝ์์ ํ์ฌ Owner Stack์ ์ฝ๊ณ , ์ฌ์ฉ๊ฐ๋ฅํ ๋ฌธ์์ด์ ๋ฐํํฉ๋๋ค.createContext
๋ฅผ ํตํด ์์ ์ปดํฌ๋ํธ๋ค์๊ฒ ์ ๋ฌํ ์ ์๋ ์ปจํ ์คํธ๋ฅผ ์ ์ํ๊ณ ์ ๊ณตํฉ๋๋ค. ๋ณดํตuseContext
์ ํจ๊ป ์ฌ์ฉํฉ๋๋ค.lazy
๋ฅผ ํตํด ์ปดํฌ๋ํธ๊ฐ ์ฒ์ ๋ ๋๋ง๋ ๋๊น์ง ํด๋น ์ปดํฌ๋ํธ์ ์ฝ๋๋ฅผ ๋ก๋ฉํ๋ ๊ฒ์ ์ง์ฐํฉ๋๋ค.memo
๋ฅผ ํตํด ๋์ผํ Props์ผ ๊ฒฝ์ฐ ์ปดํฌ๋ํธ๊ฐ ๋ค์ ๋ ๋๋ง๋์ง ์๋๋ก ์ต์ ํํฉ๋๋ค. ์ฃผ๋กuseMemo
,useCallback
๊ณผ ํจ๊ป ์ฌ์ฉํฉ๋๋ค.startTransition
์ ํตํด ์ํ ์ ๋ฐ์ดํธ๋ฅผ โ๋ ๊ธด๊ธํ ์์ โ์ผ๋ก ํ์ํ์ฌ UI์ ๋ฐ์์ฑ์ ์ ์งํฉ๋๋ค.useTransition
๊ณผ ์ ์ฌํฉ๋๋ค.use
๋ Promise๋ Context์ ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ์ฐธ์กฐํ๋ React Hook์ ๋๋ค.taintObjectReference
๋ฅผ ํตํดuser
๊ฐ์ฒด์ ๊ฐ์ ํน์ ํ ๊ฐ์ฒด ์ธ์คํด์ค๋ฅผ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ก ์ ์กํ๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.taintUniqueValue
๋ฅผ ํตํด ํจ์ค์๋, ํค ๋๋ ํ ํฐ๊ณผ ๊ฐ์ ๊ณ ์ ๊ฐ์ ํด๋ผ์ด์ธํธ ์ปดํฌ๋ํธ๋ก ์ ์กํ๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.addTransitionType
๋ฅผ ํตํด, ํธ๋์ง์ ์ด ๋ฐ์ํ ์์ธ์ ์์ธํ ๋ํ๋ ๋๋ค.
Resource APIs
Resource๋ฅผ State์ ์ผ๋ถ๋ก ํฌํจํ์ง ์๊ณ ๋ ์ปดํฌ๋ํธ์์ Resource์ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, ์ปดํฌ๋ํธ๋ Promise์์ ๋ฉ์์ง๋ฅผ ์ฝ๊ฑฐ๋ Context์์ ์คํ์ผ ์ ๋ณด๋ฅผ ์ฝ์ ์ ์์ต๋๋ค.
Resource์์ ๊ฐ์ ์ฝ์ผ๋ ค๋ฉด ๋ค์ API๋ฅผ ์ฌ์ฉํ์ธ์.
function MessageComponent({ messagePromise }) {
const message = use(messagePromise);
const theme = use(ThemeContext);
// ...
}