Intro
μ§λ μκ°μλ νλ‘μ νΈ μ ν μ μλ£νκ³ μ΄λ² μκ°λΆν° 본격μ μΌλ‘ κΈ°λ₯μ κ°λ°νλ λ°©λ²μ λν΄ νμ΅νμλ€.
νλ μμν¬λ λΌμ΄λΈλ¬λ¦¬ μμ΄ μμ±νλ createElement, appendChildλ₯Ό μμ² μ¬μ©ν΄μ κ°λ°μ ν΄μΌ ν΄μ κΈ°λ₯μ΄ λ§μμ§μλ‘ μ½λκ° λ³΅μ‘ν΄μ‘λ€. νμΌλ‘ μΈλΆννλ κ³Όμ μ΄ μ€μν κ² κ°λ€. κ·Έλ¦¬κ³ νλ μμν¬μ μ¬μ© μ΄μ μ λν΄ μκ²λμλ€.
μ€λ νμ΅ν λ΄μ©
: κΈ°λ₯ κ°λ°νκΈ°
μ§ν νλ‘μ νΈ μ 리 - Action
- load: μ΅μ΄ μ§μ μμ
- μ μ μ μ‘μ β‘οΈ ν΄λ¦, μ λ ₯ λ±λ±
μ μ μ€ν 리
- νμ¬ μμ°μ΄ μ λ ₯λμ§ μμ κ²½μ° → μμ°μ μ λ ₯ν μ μλ€.
- μ λ ₯λμ΄ μλ κ²½μ° → μμ°μ μλ‘ μ λ ₯ν μ μλ€.
- νμ¬ μμ°μ 0μ μ΄μ μ λ ₯ν΄μΌ νλ€.
- νμ¬ μμ°μ μ λ ₯ν΄μΌ μλΉ λ΄μμ μ λ ₯ν μ μλ€.
Action - Load
- νμ¬ μμ° κΈμ‘ μ‘°ν
- λκΈ°: λ‘λ©
- μ±κ³΅: μ±κ³΅ feedback
- μ€ν¨: μ€ν¨ feedback
- νμ¬ μμ°μ μ‘΄μ¬ μ¬λΆλ₯Ό νμΈ
- μ‘΄μ¬ν κ²½μ°:
- input λΉνμ±ν
- μλΉλ΄μ μ λ ₯ λ²νΌ λ ΈμΆ
- μ‘΄μ¬νμ§ μμ κ²½μ°:
- input νμ±ν
- μ‘΄μ¬ν κ²½μ°:
Action - μ μ μ μ‘μ
(μ‘μ : input) νμ¬ μμ°μ μ λ ₯νλ€.
- validation: κΈμ‘ 0μ μ΄μ
- μ
λ ₯ ν, μλ²μ μ μ₯
- λκΈ°: λ‘λ©
- μ±κ³΅: μ±κ³΅ feedback
- μ‘΄μ¬ν κ²½μ°μ μΌμ΄μ€
- μ€ν¨: μ€ν¨ feedback
μμ²λΌ, κ³μ°κΈ° κΈ°λ₯λ€μ λ‘λ μμ κ³Ό μ μ μ μ‘μ μμ μ 리ν μ‘μ λ€μ κ°μ§κ³ μ½λλ‘ μ§μ μμ±ν΄ 보λ μ€μ΅μ μ§ννμλ€.
μ€μ΅μ μ§ννλ©΄μ Font Awesomeμ΄λΌλ μ¬μ΄νΈλ₯Ό μκ² λμλ€.
μΉμμ μ¬μ©νλ μμ΄μ½λ€μ λΆλ¬μ¬ μ μλ μ μ΅ν μ¬μ΄νΈμ΄λ€.
Font Awesome
Font Awesome
The internet's icon library + toolkit. Used by millions of designers, devs, & content creators. Open-source. Always free. Always awesome.
fontawesome.com
- npmμμ μ μ©νλ λ°©λ²
npm install --save @fornawesome/fontawesome-free
- λ€μμΌλ‘ μνλ λμμΈμ μ νν ν HTML μ½λλ₯Ό 볡μ¬νλ€.
<i class="fa-solid fa-spinner-third"></i>
- JS νμΌμ importν΄μ μ¬μ©νλ€.
import '@fortawesome/fontawesome-free/js/all.js';
λ§λ¬΄λ¦¬
μ€λμ μμΉ¨λΆν° κΈ°λΆμ΄ μ’μ λ μ΄λ€. μλνλ©΄ TIL λ°°μκΈ°λ‘μμ μ μ λμκΈ° λλ¬Έμ΄λ€! ννπ
μ΄μ¬ν μμ±ν 보λμ΄ μλ€. μ μ λκΈ° μν΄ μμ±ν 건 μλμλλ° μμΌλ€κ³ μΉμ°¬μ λ°μΌλ λ무 λΏλ―νλ€.
λ΄κ° λ§€μΌ TILμ μμ±νλ μ΄μ λ κΈ°λ‘μ΄λΌλ μλ¨μΌλ‘ λ΄κ° λ°°μ΄ μ λ³΄κ° λμ μ§μμΌλ‘ μ 리νκΈ° μν¨μ΄λ€.
μ¬ν΄ λͺ©ν μ€ νλκ° κΈ°λ‘μ μ νλ κ²μ΄λ€. κ·Έλ¬κΈ° μν΄ μ΅κ·Όμ μ½κ³ μλ μ± μ€ νλκ° 'κ±°μΈμ λ ΈνΈ'λΌλ μ± μΈλ° μ± μ ν΅ν΄ κΈ°λ‘μ μ΄μ μ λ°©λ²μ λν΄ λ§μ΄ λ°°μ°κ³ μλ€.
κ°μλ₯Ό λ€μΌλ©΄μ μκ²λλ κ²μ λ§μ§λ§ κ·Έ λ΄μ©μ λ£λλ€κ³ λ΄ κ²μ΄ λλ κ²μ΄ μλλ€. κΈ°λ‘μ΄λΌλ μλ¨μ ν΅ν΄ λ΄ μ§μμΌλ‘ μμκ°λ κ²μ΄λ€.
μλ κΈ°λ‘μ΄λ 건 μ€λ 걸리λ μΌμ΄ λ§λ€. λ¨μν λ² λΌλ κ²μ΄ μλλΌ μκ°λ νλ©΄μ μμ±νλ κ²μ΄κΈ° λλ¬Έμ μ€λ 걸리λ κ² λΉμ°νλ€. κ·Έλ μ§λ§ μκ°μ ν¬μν λ§νΌ λ΄ κΈ°μ΅μλ μ€λ λ¨μμμ κ²μ΄λ€. κ·Έλ¬λ λ€λ€ TIL μμ±μ ν΄λ³΄λ κ²μ κΆν©λλ€π
νλΆν μ§μμ μμ·¨νκ³ μΆλ€λ©΄ 무μμ λ¨ΉκΈ°λ§ ν΄μλ μ λλ€. κ·Έκ²μ μ μνν΄μΌλ§ νΌκ° λκ³ μ΄μ΄ λλ€. - κ±°μΈμ λ ΈνΈ δΈ