whats-new-in-react-19
Server Component (RSC)β
react server componentμ μ΄ν΄
- μ΄κΈ° νμ΄μ§ λ‘λ μκ°: μλ²μμ componentλ₯Ό λ λλ§νμ¬ ν΄λΌμ΄μΈνΈλ‘ μ μ‘λλ JavaScript μμ μ€μ¬ μ΄κΈ° λ‘λκ° λ λΉ¨λΌμ§λ€. λν νμ΄μ§κ° ν΄λΌμ΄μΈνΈλ‘ μ μ‘λκΈ° μ μ μλ²μμ λ°μ΄ν° μΏΌλ¦¬κ° μμλλλ‘ νλ€.
- Code portability(μ½λ μ΄μμ±): server componentλ₯Ό μ¬μ©νλ©΄ κ°λ°μκ° μλ²μ ν΄λΌμ΄μΈνΈμμ λͺ¨λ μ€νλ μ μλ κ΅¬μ± μμλ₯Ό μμ±ν μ μμΌλ―λ‘ μ€λ³΅μ΄ μ€μ΄λ€κ³ μ μ§ κ΄λ¦¬κ° κ°μ λλ©° μ½λλ² μ΄μ€ μ 체μμ λ
Όλ¦¬λ₯Ό λ μ½κ² 곡μ ν μ μλ€.
- SEO. κ΅¬μ± μμμ μλ² μΈ‘ λ λλ§μ ν΅ν΄ κ²μ μμ§κ³Ό LLMμ΄ μ½ν
μΈ λ₯Ό λ³΄λ€ ν¨κ³Όμ μΌλ‘ ν¬λ‘€λ§νκ³ μμΈνν μ μμ΄ κ²μ μμ§ μ΅μ νκ° ν₯μ.
- λ‘컬 νμΌ μμ€ν
μ μ κ·Όν μ μμΌλ©° λ°μ΄ν° κ°μ Έμ€κΈ° λ° λ€νΈμν¬ μμ²μ λν 짧μ μ§μ° μκ°μ κ²½νν μ μμ. (μλ² λ¦¬μμ€μ μ κ·Όν μ μμ)
- μλ² μ»΄ν¬λνΈμμ import λλ λͺ¨λ ν΄λΌμ΄μΈνΈ μ»΄ν¬λνΈλ₯Ό code splitting ν¬μΈνΈλ‘ κ°μ£ΌνκΈ° λλ¬Έμ λ μ΄μ
React.lazy
λ‘ λ©λ΄μΌ νκ² λͺ
μνμ§ μμλ λλ€.
- λ―Όκ°ν μλ² μμμ λ°μ΄ν°λ₯Ό μμ νκ² μ¬μ©ν μ μλ€.
μλ² μ»΄ν¬λνΈμ μλ² μ¬μ΄λ λ λλ§μ μ°¨μ΄β
- μλ² μ»΄ν¬λνΈμ μ½λλ ν΄λΌμ΄μΈνΈλ‘ μ λ¬λμ§ μμ. μλ² μ¬μ΄λ λ λλ§μ λͺ¨λ μ»΄ν¬λνΈμ μ½λλ μλ°μ€ν¬λ¦½νΈ λ²λ€μ ν¬ν¨λμ΄ ν΄λΌμ΄μΈνΈλ‘ μ μ‘λλ€.
- μλ² μ»΄ν¬λνΈλ ν΄λΌμ΄μΈνΈ μνλ₯Ό μ μ§νλ©° refetch λ μ μμ. μλ² μ»΄ν¬λνΈλ HTMLμ΄ μλ νΉλ³ν ννλ‘ μ»΄ν¬λνΈλ₯Ό μ λ¬νκΈ° λλ¬Έμ νμν κ²½μ° ν¬μ»€μ€, μΈν μ
λ ₯κ° κ°μ ν΄λΌμ΄μΈνΈ μνλ₯Ό μ μ§νλ©° μ¬λ¬ λ² λ°μ΄ν°λ₯Ό κ°μ Έμ€κ³ 리λ λλ§νμ¬ μ λ¬ν μ μμ. νμ§λ§ SSRμ κ²½μ° HTMLλ‘ μ λ¬λκΈ° λλ¬Έμ μλ‘μ΄ refetchκ° νμν κ²½μ° HTML μ 체λ₯Ό 리λ λλ§ ν΄μΌ νλ©° μ΄λ‘ μΈν΄ ν΄λΌμ΄μΈνΈ μνλ₯Ό μ μ§ν μ μμ.
μ νμ¬νβ
- μλ² κ΅¬μ± μμλ μ΄λ²€νΈ νΈλ€λ¬λ₯Ό λ±λ‘νκ³ ν΄λΌμ΄μΈνΈμμ νΈλ¦¬κ±°ν΄μΌ νλ―λ‘ μνΈ μμ©μ μ§μν μ μμ.
- μλ₯Ό λ€μ΄, μ΄λ²€νΈ νΈλ€λ¬λ
onClick
ν΄λΌμ΄μΈνΈ κ΅¬μ± μμμμλ§ μ μν μ μμ.
- μλ² κ΅¬μ±μμλ λλΆλΆμ Hooksλ₯Ό μ¬μ©ν μ μμ.
- μλ² κ΅¬μ± μμλ λ λλ§ ν λ©λͺ¨λ¦¬μ μ μ§λμ§ μμΌλ©° μ체 μνλ₯Ό κ°μ§ μ μμ.
- μλ² κ΅¬μ± μμμμ ν΄λΌμ΄μΈνΈ κ΅¬μ± μμλ‘ μ λ¬λλ Prop κ°μ μ§λ ¬ν κ°λ₯ν΄μΌ νλ€.
- jsonννλ‘ μ§λ ¬ν κ°λ₯ν νλͺ©λ€