KCMF μ κ΄λ¦¬μ νμ΄μ§μ λ€μ΄λ‘λ κΈ°λ₯μμ νμ΄μ§μ λν κ°μΈ νλΌλ―Έν°(pageName)μ μΆκ°νλ μμ μ μ§ννλ€. κ° νμ΄μ§λ§λ€ 첨λΆνμΌμ λ€μ΄λ‘λ λ°μΌλ©΄ κ·Έ μ΄λ ₯μ΄ λ¨μ λ€μ΄λ‘λ μ΄λ ₯ νμ΄μ§ λͺ©λ‘μ λ±λ‘λλ κ³Όμ μ΄μλλ°, λ°±μλ κ°λ°μλΆμ΄ λ€μ΄λ‘λκ° λ°μνκ²
KCMF νλ‘μ νΈμ κ΄λ¦¬μ νμ΄μ§μμ 곡ν΅μΌλ‘ μ°μ΄λ ν€μλλ₯Ό κ΄λ¦¬νλ νμ΄μ§λ₯Ό μμ νλ€. μ£Όμ , μ₯λ₯΄, μ€λμ€λ‘ λλκ³ ν΄λΉ λΆλ₯μ λ°λΌ μ°μ΄λ ν€μλλ₯Ό μΆκ°νκ±°λ μμ ν μ μλ κΈ°λ₯μ΄λ©°, ν΄λΉ ν€μλλ€μ μ μμ μΌλ‘ λ€λ₯Έ νμ΄μ§μλ μ μ©μ΄ λλ€.κΈ°μ‘΄ λ°μ΄ν°λ‘ λ°μ
μ΄λλ―Ό νλ‘μ νΈμμ 곡μ§μ¬νμ λ±λ‘νλ νμ΄μ§λ₯Ό μμ μ€μ΄μλ€. νΌ μμ μ§νμ€ μλν°λ ꡬνν΄μΌνκ³ , MUI λΌμ΄λΈλ¬λ¦¬μμλ λ°λ‘ μλν° κΈ°λ₯μ΄ μ 곡λμ§ μμλ€. κ·Έλμ μ°Ύμ보λ λμ€ ReactQuill λΌλ ν΄μ μκ²λμ΄ μ μ©ν΄λ³΄κΈ°λ‘ νλ€.λλ νμ¬ react-hoo
μΈμ€νκ·Έλ¨ ν΄λ‘ μ½λ©μ νλ μ€, μλ¦Ό νμμ μ€λ λ μ§μ ν΄λΉνλ 컨ν μΈ λ₯Ό νν°λ§ ν΄μ νμνλ μμ μ νκ³ μμλ€. data μ map μ λλ € μ€λ λ μ§μ ν΄λΉλλ 컨ν μΈ λ©΄ todayAlarm μ΄λΌλ state λ°°μ΄μ λ΄μμ§λ κ΅¬μ‘°λ‘ μ½λλ₯Ό ꡬννλλ°, μ€λμ ν΄
λ¨μν νΌλΈλ¦¬μ± μ 무λ₯Ό λ§‘κ² λμ΄ μμ μ€, κΈ°νμλΆκ»μ μμ μ μ리μμ λ‘컬νλ©΄μ λ³΄κ³ μΆλ€ νμ ¨λ€. μ΄μ κΉμ§ 리μ‘νΈλ λ·° νκ²½μμ μμ μ νλ€κ°, μΌλ° HTML/CSS/JavaScript κ°μ΄ μ μ νμΌλ‘λ§ κ΅¬μ±λ μνμμ λ‘컬 νλ©΄μ 곡μ λ리λ κ²μ μ²μμ΄μλ€.ip μ£Ό
νμ¬ λ¦¬μ‘νΈ νκ²½μμ μΈμ€νκ·Έλ¨ ν΄λ‘ μ½λ© μ€μ΄λ€. μΈμ€νκ·Έλ¨ λ©μΈ κ²μκΈμ βλ보기β λ²νΌμ λλ₯΄λ©΄ νμ μ΄ λμ€λλ°, κ±°κΈ°μ βκ²μκΈλ‘ μ΄λβ μ λλ₯Ό μ μμΈνμ΄μ§λ‘ μ΄λνλλ°, μ΄ λΆλΆμ ꡬννλ €νλ€.νμ§λ§ κ²μκΈ μμΈλ λ κ°μ§μ ννλ₯Ό λλ€. ν΄λΌμ΄μΈνΈ νκ²½μμ
κ°μΈνλ‘μ νΈ μ€, μμλ‘ ν¬μ»€μ±μ μ£Όλ μμ μ΄ νμνλ€. β λκΈ μμ΄μ½μ ν΄λ¦νλ©΄ μλ λκΈ νΌμ΄ ν¬μ»€μ± λλλ‘μμ μ κ°λ¨νλλ°, useForm μ setFocus λ₯Ό μ¬μ©νλ©΄ λ μΌμ΄μλ€. νμ§λ§ μ΄μ§ΈμμΈμ§ ν¬μ»€μ±μ΄ λμ§ μμκ³ , useRef κΉμ§ μ¬μ©νλλ°λ ν¬μ»€
μΈμ€νκ·Έλ¨ ν΄λ‘ μ½λ© νλ‘μ νΈ μμ μ€, λ보기 λ²νΌμ ν κΈ ν΄λ¦μ λ©λ΄μ°½μ΄ λ¨κ³ λ«νλλ‘ λ§λ€μ΄λμ μνμ΄λ€. μ¬κΈ°μ λλ λ©λ΄μ°½ μΈμ μμμλ ν΄λ¦ν μ λ©λ΄μ°½μ΄ λ«νλλ‘ νκ³ μΆμ΄νλ€. μ°Ύλ λ΄μ©μ€, λ¨μνκ² μ 체μμμ νκ·Έλ‘ κ°μΌ ν ν΄λΉ μ μ νκ·Έμ onClick
next νλ‘μ νΈλ₯Ό μμνλ € μ΄κΈ° μΈν μ€, λ€μκ³Ό κ°μ eslint μλ¬ λ¬Έκ΅¬κ° λ΄λ€.μ΄κΈ° eslintrc.json λ λ€μκ³Ό κ°μ΄ μλμΌλ‘ μ€μ λμ΄μλ μν©μ΄λ€.next.js μ΄κΈ° μΈν (eslint, prettier) κ΄λ ¨ κΈμ μμΉνμλλ°, μμ λΆλΆλ§μΌλ‘ μλ²½νκ²
μ€ν¬λ‘€ κΈ°λ₯μ λ§μμΌνλ μν©μμ λλΆλΆμ body μ overflow-y: hidden μ μ£Όλ λ°©λ²μ΄ μ μλμ§λ§, κ·Έλ μ§ μμ κ²½μ° μλ°μ€ν¬λ¦½νΈλ‘ μ΄λ₯Ό μ²λ¦¬ν΄μΌνλ€.μ²μμ μλμ κ°μ΄ μ΄λ²€νΈλ₯Ό μ£Όμμ§λ§ μλνμ§ μμλ€ γ λλ²μ§Έ μλλ‘ μλμ κ°μ΄ λ€λ₯Έ μ΄λ²€νΈμλ μ
μ¬μ©μ μ λ ₯νΌμ μ¬λ¬ λ¨κ³λ‘ μμ±ν μ μλ λΆλΆμ λ μ΄μ΄ νμ μμΌλ‘ λμ΄μ§λκ²μ΄ μλ, λΈλΌμ°μ μμμλ λ€λ‘κ°κΈ°, μμΌλ‘ κ°κΈ°κ° κ°λ₯ν λλ©νμ΄μ§ νμμΌλ‘ λ§λ€κ³ μΆμλ€. μλμ κ°μ μ¬νλλ¬Έμ΄μλ€.4κ°μ νμ΄μ§λ‘ λΆλ¦¬νλ©΄ νμ΄μ§ μ΄λ μ μ΄μ μ μ λ ₯ν μ¬μ©μμ μ
μ΄λ―Έ ννμ΄μ§ μ€ν¬λ‘€μ΄ ꡬνλμ΄μλ μννΉμ νμ΄μ§λ΄μμ μ¬λΌμ΄λκ° μΈλ‘λ‘ μ€ν¬λ‘€λλ κ΅¬μ‘°λ‘ λ§λ€μ΄μΌ νλλ°, ννμ΄μ§ μ€ν¬λ‘€ κΈ°λ₯κ³Ό κ²Ήμ³ μ€ν¬λ‘€ μ΄λ²€νΈλ₯Ό ꡬννλλ° μ½μ§ μμλ€..ν΄λΉ νμ΄μ§μ λλ¬νλ©΄ body μ μ€ν¬λ‘€μ λ§μ ν μ¬λΌμ΄λλ₯Ό μ€ννκ² νκ³ , μ¬λΌμ΄λ
select λ°μ€μμ νλͺ©μ μ’ λ₯ κ°μλ₯Ό μ λ ₯νλ©΄, κ°μμ λ°λΌ input μΉΈμ΄ μΆκ°λλ κΈ°λ₯μ ꡬνν΄λ³΄μλ€. (νλͺ©μ 4κ°κΉμ§ μ λ ₯ κ°λ₯)κ°μλ₯Ό λ³κ²½μ, κ°μκ° μ μ΄μ§λ©΄ μ μ΄μ§ κ°μλ§νΌ λ€μμλΆν° input μμ , μ λ ₯κ°μ΄ κ°μ΄ μ μΆλ μ μμΌλ―λ‘ κ·Έμ λ°λ₯Έ valu
pagination μ bullets μμλ₯Ό css 컀μ€ν νλκ²μ΄ μλ, νΉμ΄ν λͺ¨μμ μμ λ€λ₯Έ λ²νΌμ pagination μΌλ‘ λ§λ€κ³ μΆμ΄ svg λ₯Ό μ¬μ©νλ€. νμ§λ§ λ§μ λκ΄μ΄ μμλλ°, κΈ°μ‘΄ λ΄μ₯λ pagination μ μ΄λ€λ©΄ μ€νμΌλ§ λ°κΎΈλ©΄ λμ§λ§ μμ
μμ룩 μ΄λ©μΌ μλΉμ€μ μλͺ μ λ±λ‘ν λ, μ΄λ―Έ λ§λ€μ΄μ§ html μ κ·Έλλ‘ μλͺ μ λ³΅μ¬ λΆμ¬λ£κΈ° ν μ μλ κΈ°λ₯μ λ§λ€κ³ μ νκ³ μ΄λ₯Ό μλ°μ€ν¬λ¦½νΈλ‘ ꡬννλ €νλ€.μΌμͺ½ form μ μ΄λ¦, λ²νΈ λ±μ μ λ ₯νλ©΄ μ€λ₯Έμͺ½ νλ©΄μ κ·Έλλ‘ μ λ³΄κ° μ€νμΌμ΄ μ νμ§ μ± λ°μλ¨μμ±λ
νμκ°μ νμμ λΉλ°λ²νΈλ₯Ό μ λ ₯ ν ν΄λΉ λΉλ°λ²νΈκ° λ§λμ§ ν λ² λ νμΈνλ βλΉλ°λ²νΈ νμΈβ μΈνμ μμ±νλ€. react-hook-form νκ²½μμ useController λ₯Ό ν΅ν΄ Input μ»΄ν¬λνΈλ‘ λ§λ μν©μ΄λ€.λΉλ°λ²νΈκ° λ§μ§ μμ μ 'λΉλ°λ²νΈκ° μΌμΉνμ§
μ½κ΄λμ νμ΄μ§λ₯Ό λ§λ€λ, μμ½λμΈ ννλ‘ μ½κ΄λ΄μ©μ ν΄λ¦νλ©΄ νμΈν μ μλλ‘ νκ³ μ²΄ν¬λ°μ€μ μ λͺ©μ 보μ΄λ ꡬ쑰λ₯Ό λ§λ€κ³ μΆμλ€.β μ΄μ©μ½κ΄μμ λλ₯Ό μ μλ μ λͺ©λ²νΌκ³Ό 체ν¬λ°μ€λ κ·Έλλ‘ λ μνλ‘, 컨ν μΈ λ§ μ΄λ¦¬κ³ λ«νλ ꡬ쑰νλμ κΈ°λ₯μ νλ μ»΄ν¬λνΈ λ΄ μ‘΄μ¬ν
ν μ€νΈλ₯Ό 볡μ¬νλ λ²νΌ κΈ°λ₯μ΄ μμ΄ λ¦¬μ‘νΈ νκ²½ 볡μ¬κΈ°λ₯μ μ§μν΄μ£Όλ λΌμ΄λΈλ¬λ¦¬λ₯Ό νμ©ν΄ μλμ κ°μ΄ μμ νμλ€.νμ§λ§ ν΄λΉ λ²νΌμ΄ λ€λ₯Ένμ΄μ§μμλ μ€λ³΅ μ¬μ©λμ΄ μ»΄ν¬λνΈλ‘ λ€μ μ¬κ΅¬μ±νμ¬ μμ ν΄λ³΄μλ€.볡μ¬κ° λμλ€λ μλ¦Όμ λμ΄ ν 2μ΄ λ€μ
next νλ‘μ νΈμμ μΈλΆμμ κ°μ Έμ€λ μ΄λ―Έμ§λ₯Ό μ λ‘λνλ μμ μ€ μ΄λ―Έμ§κ° μλ¨λ νμμ΄ λ°μνλ€.μ΄λ―Έμ§ url μ μ κ°μ Έμμ Έ μλ²μͺ½ λ¬Έμ λ μλκ² κ°μκ³ , srcκ²½λ‘κ° β/\_next/img~ μ κ°μ΄ μ μμ μ΄μ§ μκ² λ λλ§λμ΄μμλ€.ꡬκΈλ§ κ²°κ³Ό κ·Έ μμΈμ, N
TailwindCSS λ₯Ό μ¬μ©νλλ° μκΎΈ className={} κ°μ²΄ ννλ‘ μλμμ±λλ μ μ΄ λ무 λΆνΈν΄μ μ€μ μ λ°κΎΈκ³ μ νλ€. λ¨Όμ νμ₯νλ‘κ·Έλ¨μ΄ μμΈμΈκ° μΆμ΄ λͺ¨λ λΉνμ±ν μμΌλ΄€μ§λ§, μ¬μ ν μλμμ± κΈ°λ₯μ κ·Έλλ‘μκ³ μ΄λ λ΄μ₯λ κΈ°λ₯μ΄λ κ²μ μ μΆν μ μμ