پیکربندی (Configuration)
فایل tsconfig.json مغز پروژه است. این فایل می گوید چه فایل هایی کامپایل شوند و چه قابلیت هایی روشن شوند. با پیکربندی درست، توسعه روان می شود و خروجی مطمئن می گیرید.
مفاهیم کلیدی پیکربندی
compilerOptions یعنی تنظیمات کامپایلر. مثلاً هدف جاوااسکریپت، ماژول، یا سخت گیری تایپ ها. include یعنی چه مسیرهایی را وارد کن. exclude یعنی چه مسیرهایی را نادیده بگیر. files یعنی فهرست صریح فایل ها. extends یعنی ارث بری از یک پیکربندی دیگر. references یعنی استفاده در مونوریپو یا چند پروژه.
حداقل پیکربندی
برای شروع، یک پیکربندی کوچک بساز. سپس فقط پوشه کد را وارد کن.
{
"compilerOptions": {
"target": "es6",
"module": "commonjs"
},
"include": ["src/**/*"]
}
پیکربندی پیشرفته
وقتی پروژه بزرگ شد، گزینه های بیشتر لازم است. سپس مسیرها، خروجی، و سخت گیری را تنظیم کن.
{
"compilerOptions": {
"target": "es2020",
"module": "esnext",
"strict": true,
"baseUrl": ".",
"paths": {
"@app/*": ["src/app/*"]
},
"outDir": "dist",
"esModuleInterop": true
},
"include": ["src"],
"exclude": ["node_modules", "dist"]
}
ساخت tsconfig به صورت خودکار
می خواهی سریع بسازی؟ دستور زیر فایل پیکربندی ایجاد می کند.
tsc --init
سناریوهای واقعی پیکربندی
مونوریپو (Monorepo): از references و extends برای اشتراک تنظیمات کمک بگیر. کتابخانه: declaration و outDir را فعال کن. اپلیکیشن: strict و esModuleInterop معمولاً بهترین تجربه را می دهند.
خطاهای رایج و رفع آن ها
اگر فایل ها دیده نمی شوند، ابتدا include و exclude را بررسی کن. اگر مسیرها کار نمی کنند، baseUrl و paths را چک کن. اگر پس از strict خطا زیاد شد، کد را ایمن تر کن.
نکته: خروجی ساخت مثل dist را وارد گیت نکن. پوشه های خروجی باید نادیده گرفته شوند.
گام های عملی پیکربندی
- دستور
tsc --initرا اجرا کن. strictوoutDirرا تنظیم کن.- در صورت نیاز،
pathsوbaseUrlرا اضافه کن.
جمع بندی سریع
tsconfig.jsonمسیر کامپایل را مشخص می کند.includeوexcludeرا دقیق بنویس.strictرا روشن نگه دار.- برای پروژه های بزرگ از
extendsکمک بگیر.
برای ادامه مسیر، صفحه به روزرسانی های نسخه 5 را ببین. همچنین فصل Node.js بعد از پیکربندی مفید است.