reactjs - تحذير: أنت حالياً تستخدم نسخة من TypeScript غير مدعومة رسمياً من قبل @typescript-eslint/typescript-estree


أنا أحصل على بعض الأخطاء في الطرفية الخاصة بي وتقول أنه يجب علي استخدام الإصدار 4.4.0 وإصدار الحالي لدي هو ...

في مشروعي، إصدار TypeScript الحالي الخاص بي موضح أدناه،

    "typescript": "^4.4.2",
    "typedoc": "^0.21.8",
    "react-scripts": "^3.4.4",
    "@typescript-eslint/eslint-plugin": "^4.29.3",
    "@typescript-eslint/parser": "^4.29.3",

علاوة على ذلك، عندما أحاول تشغيل أوامر npm run dev أو npx eslint . يظهر لي هذا الخطأ كما هو موضح أدناه،

    =============

   WARNING: You are currently running a version of TypeScript which is not 
   officially supported by @typescript-eslint/typescript-estree.

    You may find that it works just fine, or you may not.

   SUPPORTED TYPESCRIPT VERSIONS: >=3.3.1 <4.4.0

   YOUR TYPESCRIPT VERSION: 4.4.2

     Please only submit bug reports when using the officially supported 
    version.

    =============

كيف يمكنني حل هذه المشكلة وقد قمت بالكثير من البحث في جوجل ولكن لا شيء يعمل.

الإجابة رقم 1

كنت أعاني من نفس التحذير. حلت المشكلة عن طريق تحديث eslint والحزم ذات الصلة إلى أحدث إصدار من خلال تشغيل:

npm i eslint@latest @typescript-eslint/parser@latest @typescript-eslint/eslint-plugin@latest --save

الآن، لدي الإصدارات التالية في ملف package.json الخاص بي ولم أعد أتلقى التحذير

"eslint": "^8.38.0",
"eslint-config-google": "^0.14.0",
"eslint-plugin-import": "^2.22.0",
"typescript": "^5.0.4"

الإجابة رقم 2

لن أخفض إصدار TypeScript الخاص بي، حيث ستفوتك ميزات TS الجديدة - سأجد طريقة لتحديث @typescript-eslint/typescript-estree.

قد لا يكون لديك هذا مثبتًا مباشرة وقد يكون هذا تابعًا لحزمة أخرى، @typescript-eslint/experimental-utils التي هي تابع لحزمة @typescript-eslint/eslint-plugin على سبيل المثال، لذا تتبع الحزمة الأصلية في ملف yarn.lock/package.lock وقم بترقيتها، ونتيجة لذلك يجب أن يتم ترقية @typescript-eslint/typescript-estree أيضًا.

الإجابة رقم 3

إذا كنت تريد فقط إخفاء هذا التحذير، أضف ما يلي إلى تكوين ESLint الخاص بك:

languageOptions: {
  parserOptions: {
    warnOnUnsupportedTypeScriptVersion: false,
  },
},

راجع الوثائق لمزيد من المعلومات.