๐ก๋ ธ๋ง๋์ฝ๋ ๋๊ผฌ์ค์ ๊ฐ์๋ฅผ ๋ณด๋ฉฐ ๊ณต๋ถํ๋ ์๋ฆฌ์ฆ์ ๋๋ค.
Hydration
์ด๊ธฐ Html ํ์ผ์ ๋จผ์ ์ ๋ฌํ๊ณ ์ดํ HTML ์์๋ค์ React ์ปดํฌ๋ํธ๋ก ๋ณํ ๋ฐ ์ด๋ฒคํธ๋ฆฌ์ค๋๋ฅผ ๋ถ์ฐฉํ์ฌ React DOM์์ ๊ด๋ฆฌํ๊ฒ ํ๋ ๊ณผ์ .
๊ฐ๋ฐ์๋๊ตฌ์์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋๊ณ link๋ฅผ ํด๋ฆญํ๋ฉด ํ์ด์ง๊ฐ ์๋ก๊ณ ์นจ ๋๋ ๊ฒ์ ํ์ธ ํ ์ ์๋ค.
์ปดํฌ๋ํธ link๋ ๋ธ๋ผ์ฐ์ ธ์์ aํ๊ทธ๋ก ์ฝํ๋ฏ๋ก aํ๊ทธ๋ฅผ ํด๋ฆญํ์ ๋ ํ์ด์ง๊ฐ ์๋ก๊ณ ์นจ ๋๋๊ฒ์ ๋น์ฐํ๋ค.
ํ์ง๋ง ๋ค์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ํ์ฑํ ํ๊ณ ์ปดํฌ๋ํธ link๋ฅผ ํด๋ฆญํ๋ฉด ์๋ก๊ณ ์นจ์์ด ํ์ด์ง๊ฐ ๋ฐ๋๋ ๊ฒ์ ํ์ธ ํ ์ ์๋๋ฐ, React์ Hydrated๋ ์ํ๋ผ๊ณ ํ๋ฉฐ ์ด๊ธฐ์ aํ๊ทธ ๋ญ์น์๋ ๊ฒ๋ค์ด ์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ํ์ฑํ๊ฐ ๋๋ฉด์ React component๋ก ๋ณํ ๋ ๊ฒ์ ๋งํ๋ค.
๋ฆฌ์กํธ Hydration์ ํ์ด์ง ์ ์ฒด๋ฅผ reloadํ์ง ์๊ณ ๋น ๋ฅด๊ฒ navegatieํ๊ฒ ๋๋ฉฐ ์ด๊ฒ์ "interactive:์ํธ์์ฉ
ํ๋ค"๊ณ ํํํ๋ค.
Hydration์ ๋จ์ HTML์ React application์ผ๋ก ์ด๊ธฐํ ํ๊ณ interactiveํ๊ฒ ๋ณํ์ํค๋ ๊ณผ์ ์ ๋งํจ.
์์์ ์ค๋ช
ํ๋๋ก HTMLํ์ผ์ด React Hydrated๋๋ ค๋ฉด component ์ต์๋จ์ 'use client'๊ฐ ์ํฌํธ ๋์ด์์ด์ผํ๋ค. ์ฆ ํ์ผ ์ต์๋จ์ 'use client'
๋ฅผ ๊ฐ๊ณ ์๋ component๋ง React Hydrated๊ฐ ๊ฐ๋ฅํ๋ค๋ ๋ง์ด๋ค. == interective component
์ด๋ถ๋ถ์ ๊ณ ๋ฏผํ ํ์๊ฐ ์๋ค. ์ปดํฌ๋ํธ๋ฅผ ๋ง๋ค์์ ๋ hydrete๊ฐ ํ์ํ๋ค๋ฉด error๋ก ํํธ๋ฅผ ์ค ๊ฒ์ด๋ค.
use client
๋ฅผ ์ฌ์ฉํ๊ฒ ๋ ๊ฒฝ์ฐ, ์ปดํฌ๋ํธ๋ฅผ hydrateํ๊ธฐ ์ํด์ JavaScript๋ฅผ ๋ค์ด๋ฐ๊ฒ ๋๋ค. ๋ง์ ์ปดํฌ๋ํธ์์ use client
ํ๊ฒ ๋ ๊ฒฝ์ฐ ๊ทธ๋งํผ์ ์ฝ์ด๋ค์ผ ์คํฌ๋ฆฝํธ์ ์์ด ๋ง์์ง๋ฏ๋ก render์๋๊ฐ ๋๋ ค์ง๊ฒ ๋๋ค.
use client
๋ฅผ ๊ฐ์ง client ์ปดํฌ๋ํธ๋ง์ด hydrate ๋ฐ interective ๋จuse client
์ ์ผ๋ฐ server component๋ฅผ ์ ์ ํ ์ฌ์ฉํ๋ ๊ฒ์ด ํจ์จ์ ์ถ๊ฐ
use client
๋ฅผ ๊ฐ์ง ์์ ์ปดํฌ๋ํธ๋ sever์๋ง ์กด์ฌํ๋ฏ๋ก ๋ณด์๋ฌธ์ ๊ฐ ์์ (DBํต์ ๊ฐ๋ฅ)