TypeScript konfiguratsiyasi (tsconfig)


ULASHISH

Kirish

tsconfig.json fayli har bir TypeScript loyihasining yuragi hisoblanadi.

U TypeScript kompilyatoriga kodingizni qanday qayta ishlash, qaysi fayllarni kiritish va qaysi funksiyalarni yoqish yoki o‘chirish kerakligini aytadi.

Yaxshi sozlangan tsconfig.json dasturchilarning silliq tajribasi va ishonchli tuzilmalarini ta’minlaydi.


Asosiy tushunchalar va tushuntirishlar

  • compilerOptions : TypeScript kodingizni qanday kompilyatsiya qilishini boshqaradi (masalan, maqsad, modul, qat’iylik).
  • include : Kompilyatsiyaga kiritiladigan fayl yoki papkalar.
  • exclude : Istisno qilinadigan fayl yoki papkalar.
  • files : Qo‘shiladigan fayllarning aniq ro‘yxati (include bilan kamdan-kam ishlatiladi).
  • extends : Boshqa konfiguratsiya faylidan opsiyalarni meros qilib olish.
  • references : Monorepos yoki ko‘p paketli sozlashlar uchun loyiha havolalarini yoqish.

Bosqichma-bosqich misollar

Minimal tsconfig.json

{
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs"
  },
  "include": ["src/**/*"]
}

Kengaytirilgan tsconfig.json

{
  "compilerOptions": {
    "target": "es2020",
    "module": "esnext",
    "strict": true,
    "baseUrl": ".",
    "paths": {
      "@app/*": ["src/app/*"]
    },
    "outDir": "dist",
    "esModuleInterop": true
  },
  "include": ["src"],
  "exclude": ["node_modules", "dist"]
}

tsconfig.json faylini yaratish uchun quyidagilarni bajaring:

Misol

tsc --init


Haqiqiy dunyo stsenariylari

  • Monorepo: Sozlamalarni paketlar bo‘ylab almashish uchun references va extends dan foydalaning.
  • Library: Tur ta’riflari uchun declaration va outDir o‘rnating.
  • App: Eng yaxshi moslik uchun strict va esModuleInterop dan foydalaning.

Umumiy tuzoqlar va muammolarni bartaraf etish

  • Noto‘g‘ri sozlangan include / exclude fayllar o‘tkazib yuborilishi yoki kutilmaganda kiritilishiga olib kelishi mumkin.
  • Yo‘llar hal qilinmayaptimi? baseUrl va paths sozlamalarini tekshiring.
  • strict ni o‘zgartirgandan so‘ng tip xatolari chiqyaptimi? Kodingizni tip xavfsizligi (type safety) nuqtai nazaridan tekshiring.

Eng yaxshi amaliyotlar

  • Xavfsiz kod uchun har doim strict yoqing.
  • Monorepos yoki bir nechta loyihalarda konfiguratsiyani takrorlamaslik uchun extends dan foydalaning.
  • Build natijasi papkalarini (masalan, dist) versiyalar nazorati tizimiga commit qilmang.



W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!