مُولد tsconfig.json

بياناتمطور
إعلان · حذف؟

اللغة والوحدات

نسخة من JavaScript تُُحول إليها.
نظام الوحدات للكود المُنتَج.
كيف يُحلّل مُصنّف التصديرات.
وضع إصدار JSX. ضروري للمشاريع المبنية على React.
مكتبات معيارية مفصولة بفواصل (أتركها فارغة لاستخدام القيمة الافتراضية للهدف). أمثلة: ES2022، DOM، DOM.Iterable، WebWorker، ESNext.

مُخطط المشروع

الدليل الرئيسي للملفات المدخلة. اتركه فارغًا لاستنتاجه تلقائيًا.
الدليل المُنتَج للملفات المُنتَجة. اتركه فارغًا لوضعه بجانب الملفات الأصلية.
الدليل الأساسي للتصديرات غير المُستندة إلى مسار. ضروري إذا قمت بتعيين تسميات المسارات.
تسميات المسارات، كل منها على سطر منفصل كـ alias=target. استخدم * كمُتَمثّل. مثال: @/*=src/*
أنماط التصدير للاستدراج، كل منها على سطر منفصل. يُفترض أن تكون جميع الملفات في المشروع إذا كان فارغًا.
أنماط التصدير للإغلاق، كل منها على سطر منفصل.

الحاسمة

التحقق

إطلاق وتبادل الوحدات

خيارات الإخراج

إعلان · حذف؟

مرشد

tsconfig.json Generator

مُولد tsconfig.json

بناء ملف صالح tsconfig.json للمشاريع المبنية على TypeScript دون تذكّر أسماء الخيارات أو البحث في ملاحظات الإصدار لفهم ما تغير في المُترجم الأخير. اختر مُعدّل (Node ESM، Node CommonJS، React، Next.js، المكتبة، أو الحاسمة)، وقم بتعديل مُحددات الحاسمة، وقم بإضافة أي تسميات مسارات، ثم نسخ المُكوّن المُنتَج إلى الجذر الخاص بمشروعك.

مُكوّن مُترجم TypeScript هو سطح مُحَسَّن: أسماء الخيارات حساسة للحروف الكبيرة والصغيرة، وتزداد قائمة الخيارات مع كل إصدار، ووجود مفتاح مُخطئ أو مُستبعد قد يُنتج نتيجة خاطئة دون أن يُظهر خطأ فوري. أداة توليد مُكوّن من خلال نمط مُختَرَع تُصدر فقط الخيارات التي تُحدّد، هي الطريقة الأسرع لاستلام مُكوّن يعمل ويتوافق مع بيئة المشروع وخطوات التصنيع.

كيفية استخدام

  1. افتح مُعدّل الملف واختر المطابق الأقرب لمشروعك. تُملأ الخيارات الافتراضية المُحسّنة للهدف، نظام الوحدات، وضع JSX، والخيارات الموصى بها.
  2. تعديل اللغة والوحدات إذا كان المُستهلك يحتاج إلى شيء مختلف target, module، أو moduleResolution. قم بضبط jsx إذا كنت تُحول React.
  3. اضبط مُخطط المشروع مجالات (rootDir, outDir, baseUrl) لتتماشى مع هيكل المجلد. أضف تسميات المسارات كل منها على سطر منفصل كـ alias=target (مثلاً @/*=src/*).
  4. استخدم الحاسمة و التحقق مربعات تحقق من اختيار التحقق الفردي. strict تُفعّل العائلة الكاملة للحاسمة في نقرة واحدة.
  5. ال إطلاق وتبادل الوحدات يُحكم هذا القسم كيفية إنتاج الملفات وطريقة عمل التصديرات الافتراضية. قم بتفعيل declaration للمكتبات أو noEmit عندما يُعالج المُجمّع الإخراج.
  6. نسخ المُكوّن المُنتَج من لوحة الإخراج، أو تنزيله مباشرة كـ tsconfig.json.

خصائص

  • مُعدّلات الملفات – Node (ESM و CommonJS)، React، Next.js موجه التطبيق، المكتبة، وملف حاسمة لمشاريع جديدة.
  • جميع الإصدارات الحديثة للهدف – من ES5 إلى ES2023 بالإضافة إلى ESNext، مع أنظمة الوحدات المُطابقة بما في ذلك NodeNext وحل التحليل من المُجمّع.
  • مُصنّع تسميات المسارات – اكتب تسمية واحدة على سطر منفصل؛ يُربط المُصنّع تلقائيًا baseUrl عند وجود تسميات مسارات.
  • الحاسمة الدقيقة – تفعيل noUncheckedIndexedAccess, exactOptionalPropertyTypes، وخيارات أخرى من عائلة الحاسمة.
  • دعم JSX – اختيار بين react-jsx, react-jsxdev، كلاسيكي react، أو preserve للمُجمّعات.
  • تعليقات داخلية – يمكن توضيح كل خيار بشرح قصير بحيث يُوثّق الملف الناتج.
  • أنماط التصدير والاستبعاد – مدخل متعدد الأسطر لـ include و exclude بأمثلة مُحسّنة لكل مُعدّل.
  • وضع المكتبة – يُفعّل المُعدّل المكتبة declaration, declarationMapو، و sourceMap لأن المستهلك يحصل على أنواع كاملة.
  • النسخ أو التنزيل – ضع النتيجة في مخزنك بضغط زر واحد.

إعلان · حذف؟

التعليمات

  1. ما هو tsconfig.json وما السبب في حاجة TypeScript له؟

    tsconfig.json هو الملف المُكوّن الذي يُقرأ من قبل مُترجم TypeScript لتحديد أي ملفات تُعتبر جزءًا من المشروع وطريقة تجميعها. وجوده في مجلد يُحدد هذا المجلد كجذر للمشروع. بدونه، يعمل المُترجم على ملفات فردية، لكن الأدوات مثل المحرّرات، خطط التصنيع، وتكامل التحقق يعتمدون عليه لتقديم رؤية متسقة للرمز، والبيئة المُستهدفة، ودرجة صرامة التحقق.

  2. ما الفرق بين الوحدة وتحديد الوحدة؟

    الوحدة تتحكم في نمط JavaScript الذي يُنتجها مُترجم TypeScript — مثل CommonJS require/exports، أو وحدات ES مع import/export، أو مزيج مثل NodeNext. أما تحديد الوحدة فهو مستقل ويتحكم في كيفية تصفح مُحددات التصدير على القرص — مثل ما إذا كان التصدير بدون توسعة يُحلّ إلى ملف .ts، ما إذا كانت حقول package.json تُحترم، وما إذا كان مُحلّل مُجمّع يُفترض. تُستخدم المشاريع الحديثة مع مُجمّع عادةً تُكوّن module: ESNext مع moduleResolution: Bundler؛ أما المشاريع النقيّة بدون مُجمّع، فيُكوّن module: NodeNext مع moduleResolution: NodeNext.

  3. ما الذي يُفعّله "مُتَّسِع" بالفعل؟

    يُعدّ "مُتَّسِع" شعارًا مُتَّسِعًا يُمكن أن يُفعّل العائلة الكاملة من الإعدادات المُتَّسِعة في مُفتاح واحد: noImplicitAny، strictNullChecks، strictFunctionTypes، strictBindCallApply، strictPropertyInitialization، noImplicitThis، alwaysStrict، و useUnknownInCatchVariables. تُضاف الإعدادات المُتَّسِعة الجديدة في إصدارات المُترجم المستقبلية تلقائيًا. يمكن تعيين الإعدادات الفردية بشكل صريح لتجاوز القيمة الافتراضية المُتَّسِعة، ولكن معظم المشاريع الجديدة ينبغي أن تُفعّل "مُتَّسِع" وتحدد الخيارات الأكثر تشددًا مثل noUncheckedIndexedAccess.

  4. كيف تعمل عناوين المسارات مع baseUrl؟

    تُعرّف "paths" علاقة تعيين من مُحددات الاستيراد إلى مواقع الملفات الفعلية، ويتم البحث عنها نسبيًا بالنسبة لـ baseUrl. على سبيل المثال، baseUrl: "." و paths: { "@/*": ["src/*"] } تعني أن استيرادًا من @/utils يُحلّ إلى ./src/utils. لا تؤثر عناوين المسارات فقط على التحقق من الأنواع؛ يتطلب مُجمّعات الملفات، أدوات الاختبار، والتشغيل نفسه تكوينًا مماثلًا (Vite resolve.alias، Jest moduleNameMapper، حقل Node imports) لكي تعمل نفس المسارات في التشغيل.

  5. في أي وقت يجب تفعيل noEmit؟

    يُستخدم noEmit في المشاريع التي يُنتج فيها أداة أخرى — عادةً مُجمّع مثل Vite أو esbuild أو webpack أو Next.js — المخرجات باللغة JavaScript، ويُستخدم TypeScript فقط للتحقق من الأنواع. مع تفعيل noEmit، يتحقق المُترجم من الأنواع دون كتابة أي ملفات. كما يكون مفيدًا في بيئة CI كخط تحقق سريع للأنواع. بالنسبة للمشاريع المُصدرة إلى npm، يُفضل إبقاء noEmit مُعطّلًا حتى يُمكن للمُترجم إصدار ملفات .js و.d.ts إلى جانب المصدر.

هل تريد حذف الإعلانات؟ تخلص من الإعلانات اليوم

تثبيت ملحقاتنا

أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع

أضف لـ إضافة كروم أضف لـ امتداد الحافة أضف لـ إضافة فايرفوكس أضف لـ ملحق الأوبرا

وصلت لوحة النتائج!

لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!

إعلان · حذف؟
إعلان · حذف؟
إعلان · حذف؟

ركن الأخبار مع أبرز التقنيات

شارك

ساعدنا على الاستمرار في تقديم أدوات مجانية قيمة

اشتري لي قهوة
إعلان · حذف؟