Strict λͺ¨λ
Sonamuλ λͺ¨λ strict μ΅μ μ νμ±νν©λλ€.strict: trueλ μμ λͺ¨λ μ΅μ
μ ν λ²μ νμ±ννλ λ¨μΆ μ€μ μ
λλ€.Strict μ΅μ μμΈ
- noImplicitAny
- strictNullChecks
- strictFunctionTypes
- strictBindCallApply
- strictPropertyInitialization
- noImplicitThis
any νμ λͺ μ νμ
κΈ°λ₯:- νμ
μ μΆλ‘ ν μ μμ λ
anyλ₯Ό μ묡μ μΌλ‘ μ¬μ©νμ§ λͺ»νλλ‘ λ°©μ§
μΆκ° νμ μ²΄ν¬ μ΅μ
Sonamuλ strict λͺ¨λ μΈμλ μΆκ° μ²΄ν¬ μ΅μ μ νμ±νν©λλ€.- Unused 체ν¬
- Return 체ν¬
- Switch 체ν¬
- Catch λ³μ
- μΈλ±μ€ μ κ·Ό
λ μ격ν μ΅μ (μ ν)
νμμ λ°λΌ μΆκ°ν μ μλ μ΅μ λ€μ λλ€.noPropertyAccessFromIndexSignature
noPropertyAccessFromIndexSignature
μΈλ±μ€ μκ·Έλμ²λ λκ΄νΈλ‘λ§ μ κ·ΌμΈμ μ¬μ©:
- λμ νλ‘νΌν° μ κ·Όμ λͺ μμ μΌλ‘ λ§λ€κ³ μΆμ λ
exactOptionalPropertyTypes
exactOptionalPropertyTypes
Optional νλ‘νΌν°λ undefinedλ§ νμ©μΈμ μ¬μ©:
- Optionalκ³Ό
| undefinedλ₯Ό μ격ν ꡬλΆνκ³ μΆμ λ
νμ μ²΄ν¬ λΉνμ±ν
νΉμ μν©μμ νμ 체ν¬λ₯Ό μ°νν΄μΌ ν λκ° μμ΅λλ€.- νμΌ μ 체
- ν μ€
- νμ λ¨μΈ
κΆμ₯ μ€μ
- μ κ· νλ‘μ νΈ
- κΈ°μ‘΄ νλ‘μ νΈ
- λΌμ΄λΈλ¬λ¦¬
μ±λ₯ κ³ λ €μ¬ν
νμ μ²΄ν¬ μ΅μ μ΄ λ§μμλ‘ μ»΄νμΌ μκ°μ΄ μ¦κ°ν μ μμ΅λλ€.νμ
μ²΄ν¬ μλ ν₯μ
νμ μ²΄ν¬ μλ ν₯μ
node_modulesμ.d.tsνμΌμ 체ν¬νμ§ μμ- μ»΄νμΌ μκ° ν¬κ² λ¨μΆ
- Sonamu κΈ°λ³Έ νμ±ν
- λ³κ²½λ νμΌλ§ μ¬μ»΄νμΌ
.tsbuildinfoνμΌμ μΊμ μ μ₯
λ€μ λ¨κ³
tsconfig.json
μ 체 TypeScript μ€μ μ νμΈνμΈμ
Path Mapping
μ λ κ²½λ‘ importλ₯Ό μ€μ νμΈμ
Entity μ μ
νμ
μμ ν Entityλ₯Ό μμ±νμΈμ
ν μ€νΈ μμ±
νμ
μμ ν ν
μ€νΈλ₯Ό μμ±νμΈμ