Learning React Basic
리μ‘νΈ(react)λ νμ΄μ€λΆ/λ©νμμ κ°λ°ν UIλ₯Ό λ λλ§νκΈ° μν κ°λ ₯ν μλ°μ€ν¬λ¦½νΈ λΌμ΄λΈλ¬λ¦¬μ λλ€. μ΄ λΌμ΄λΈλ¬λ¦¬λ 볡μ‘ν μΉ μ ν리μΌμ΄μ μ μΈν°νμ΄μ€λ₯Ό μκ³ λ 립μ μ΄λ©° μ¬μ¬μ© κ°λ₯ν μμλ€λ‘ λΆν΄νμ¬ κ΅¬μ±ν μ μκ² ν΄μ£Όλ©°, μ΄λ₯Ό ν΅ν΄ κ°λ°μλ€μ λμ± ν¨μ¨μ μ΄κ³ μ μ§λ³΄μκ° μ©μ΄ν μ½λλ₯Ό μμ±ν μ μμ΅λλ€.
μ»΄ν¬λνΈ μ€μ¬μ μ€κ³(component-based architecture): 리μ‘νΈλ μ¬μ©μ μΈν°νμ΄μ€λ₯Ό μ¬μ¬μ© κ°λ₯ν λ 립μ μμλ€λ‘ λΆν΄νλ λ°©μμ μ±νν©λλ€.
κ° μμλ μ체μ μΈ λ Όλ¦¬μ μνλ₯Ό κ°μ§λ©°, μ΄λ¬ν ꡬ쑰λ μ½λμ λͺ¨λνμ μ μ§λ³΄μλ₯Ό λμ± ν¨μ¨μ μΌλ‘ λ§λλλ€.
κ°μ λ(Virtual DOM): 리μ‘νΈλ κ°μ λμ μ¬μ©ν΄ λ λλ§μ μ΅μ νν©λλ€. μ€μ λκ³Ό μ§μ μ°κ²°νλ λμ , κ°λ²Όμ΄ κ°μ 볡μ¬λ³Έμ λ§λ€μ΄ νμν λΆλΆλ§ κ°±μ νκ³ μ‘°μν©λλ€.
JSX λ¬Έλ²(JSX syntax): 리μ‘νΈλ μλ°μ€ν¬λ¦½νΈ μμ HTMLμ μμ±ν μ μλ κ³ μ ν λ¬Έλ²μ μ 곡ν©λλ€. μ΄λ₯Ό ν΅ν΄ κ°λ°μλ UI μ½λμ λ λλ§μ λ μ§κ΄μ μΌλ‘ μ΄ν΄ν μ μμ΅λλ€.
μνμ νλ‘μ€ κ΄λ¦¬(state and props management): μνλ μ»΄ν¬λνΈ λ΄λΆμμ κ΄λ¦¬λλ λμ μΈ λ°μ΄ν° μ μ₯μμ λλ€. νλ‘μ€λ λΆλͺ¨κ° μμ μμμκ² μ ν΄μ£Όλ μ½κΈ° μ μ©μ μλ£μ λλ€.
νν¬(hook): νν¬λ μν κ΄λ¦¬λ₯Ό κ°λ¨ννκΈ° μν΄
16.8
λ²μ λΆν° μΆκ°λ 곡μμ μΈ λμμΈ ν¨ν΄μ λλ€.
리μ‘νΈ λΌμ°ν°(react router): ν΄λΌμ΄μΈνΈκ° μ€μ€λ‘ λΌμ°ν μ ν μ μκ² λ§λλ κΈ°λ₯μ λλ€.
Writing a Component
리μ‘νΈ μ ν리μΌμ΄μ μ μ»΄ν¬λνΈ(component)λΌλ μ¬μ¬μ© κ°λ₯ν μ¬μ©μ μΈν°νμ΄μ€ μ‘°κ°λ€λ‘ ꡬμ±λμ΄ μμ΅λλ€. μ΄λ¬ν μμλ€μ λ 립μ μ΄κ³ λͺ¨λνλ ꡬ쑰λ₯Ό κ°μ§λ©°, κ°κ° λ§ν¬μ μΌλ‘ λ³νλλ μλ°μ€ν¬λ¦½νΈ ν¨μμ ννλ₯Ό λ±λλ€. κ° μμλ μ체μ μΈ λ‘μ§κ³Ό μνλ₯Ό κ°μ§ μ μμΌλ©°, λ€λ₯Έ μμλ€κ³Ό μ‘°ν©λμ΄ λ³΅μ‘ν μ¬μ©μ μΈν°νμ΄μ€λ₯Ό ꡬμΆνλ λ° μ¬μ©λ©λλ€.
Markup and JSX
리μ‘νΈμμ κ° μμλ λ§ν¬μ μ ν¬ν¨νλ νλμ ν¨μμ λλ€. μ΄λ₯Ό μμ±νκΈ° μν΄ JSXλΌλ νΉλ³ν λ¬Έλ²μ μ¬μ©ν©λλ€. HTMLκ³Ό μ μ¬νμ§λ§, λμ μΈ μ 보 μ λ¬μ μν΄ λ μ격νκ² μ€κ³λμμ΅λλ€. κ·Έλμ JSXλ λ§ν¬μ κ³Ό λ€λ₯Έ λ νΉν λ¬Έλ² κ·μΉμ κ°μ§κ³ μμ΄, μΌλ°μ μΈ λ§ν¬μ μμ νμ©λλ λ€μκ³Ό κ°μ λ¬Έλ²μ΄ μ€λ₯λ₯Ό λ°μμν΅λλ€.
JSXλ μλ°μ€ν¬λ¦½νΈμ λ
Όλ¦¬λ λμ νΉμ§ μ°Έμ‘°λ₯Ό λ§ν¬μ
μ ν¬ν¨μν¬ μ μκ² ν©λλ€. μ΄λ {}
λ₯Ό μ¬μ©νλ©° μ΄λ₯Ό μ°½μ μ°λ€(open a window)λΌ ννν©λλ€.
Props Propagation
리μ‘νΈλ νλ‘(props)μ ν΅ν΄ μ»΄ν¬λνΈ κ° μνΈμμ©μ ν©λλ€. λΆλͺ¨ μ»΄ν¬λνΈκ° μμ μ»΄ν¬λνΈμκ² νλ‘μ μ λ¬νμ¬ λ°μ΄ν°λ₯Ό μ£Όκ³ λ°λ κ²μ νλ‘μ€ μ ν(props propagation)λΌκ³ ν©λλ€.
Conditional Rendering
μ»΄ν¬λνΈκ° νμλλ λ°©μμ μν©μ λ°λΌ λ€λ₯Ό μ μμ΅λλ€. JSXλ μλ°μ€ν¬λ¦½νΈμ if
, &&
, ? :
μ°μ°μλ₯Ό μ¬μ©νμ¬ μ‘°κ±΄λΆ λ λλ§μ ꡬνν μ μμ΅λλ€.
Last updated