230823(μ)
π€ μ±μ₯μΌμ§ 7.0
μ±
ν볡ν μ΄κΈ°μ£Όμμ(μ¨μΈ λ€μ΄μ΄)
μ λ΄μ©μ μκ·Ήλ°μ μμνλ μλ°ν μ±μ₯κΈ°λ‘
μ΄μμλ κ½κ³Ό μ£½μ κ½μ μ΄λ»κ² ꡬλ³νλκ°?
μ±μ₯νκ³ μλ κ²μ΄ μ΄μ μλ κ²μ΄λ€.
μλͺ μ μ μΌν μ¦κ±°λ μ±μ₯μ΄λ€!
β (7.0)<μμ κ°νΈ>
νμΈλ§ νμ΅λ²
μ μκ² λλ§νΌ, μ±μ₯μΌμ§λ μ λ§ κ·Έ λ μ ν€μλ μ€μ¬μΌλ‘ κ°λ¨νκ² μ 리νλλ‘ νλ€.
βοΈ ν€μλ: μ§κ΄μ μ΄κ³ μ½κ³ κ°λ¨νκ² μμ±
husky
npx husky-init && npm install
{
"scripts": {
"prepare": "husky install",
"format": "prettier --cache --write .",
"lint": "eslint --cache ."
}
}
npx husky add .husky/pre-commit "npm run format"
npx husky add .husky/pre-push "npm run lint"
μμ μ½λκ° κ°μ₯ μΌλ°μ μΈ pre-commitκ³Ό pre-push hookμ μ€μ νλ λ°©λ²μ΄λ€.
μ΄ λ, husky v5 μ΄μ μλ npx husky add .husky/pre-commit "npm run format" && git add .
μΌλ‘ μμ±νμλλ°(format νμ λ€μ staging ν΄μΌν΄μ), v5 μ΄νμλ ν΄μ£Όμ§ μμλ
μμμ λ³κ²½μ¬νλ§ staging ν΄μ€λ€.(vscodeμ source controlλ‘ commitν΄λ³΄λ©΄ κ·Έ μ°¨μ΄λ₯Ό νμ€ν μ μ μλ€.)
typeof nullμ ν¨μ
typeof null
μ object
μ΄λ€. μ΄λ μλ°μ€ν¬λ¦½νΈμ μ€λλ λ²κ·Έμ΄λ€! κΈ°μ΅νμ!
custom-hook
μκ°λ³΄λ€ 컀μ€ν ν μ μμ±νκΈ° μ½λ€. λ€λ§ 무λΆλ³νκ² μμ±νλ©΄ μ€νλ € μ½λκ° λ 볡μ‘ν΄μ§ μ μμΌλ μ£Όμνμ.(μ½λμ κ°λ μ±μ νμ κ³ λ €νμ!!!)
π νκ³
DDμμ 컀νΌμ±..! λ¬΄λ € 3μκ° λμμ΄λ μ μ΅νκ³ μ¬λ―Έμλ μ΄μΌκΈ°λ₯Ό ν΄μ£Όμ μ μ§μ§ λ무λ무λ무 μ€κΈΈ μνλ€λ μκ°μ΄ λ€μλ€. λλΆμ μμ¦ μ‘°κΈ λ¨μ΄μ‘λ μμ κ°μ΄ ν볡νλ κΈ°λΆ! κ°μ¬ν©λλ€, λλ~!