Typescript eslint - การนำเข้า / นามสกุลไฟล์“ ts” ที่ขาดหายไป


33

ฉันมีแอพ Node / Express ที่เรียบง่ายที่ทำด้วย typescript และ eslint ทำให้ฉันมีข้อผิดพลาด

Missing file extension "ts" for "./lib/env" import/extensions

นี่คือไฟล์. eslintrc ของฉัน

    {
  "extends": [
    "airbnb",
    "plugin:@typescript-eslint/recommended",
    "prettier",
    "prettier/react",
    "plugin:import/errors",
    "plugin:import/warnings",
    "plugin:import/typescript"
  ],
  "parser": "@typescript-eslint/parser",
  "plugins": ["@typescript-eslint", "prettier", "import"],
  "settings": {
    "import/extensions": [".js", ".jsx", ".ts", ".tsx"],
    "import/parsers": {
      "@typescript-eslint/parser": [".ts", ".tsx"]
    },
    "import/resolver": {
      "typescript": {
        "directory": "./tsconfig.json"
      },
      "node": {
        "extensions": [".js", ".jsx", ".ts", ".tsx"]
      }
    }
  },
  "rules": {
    "@typescript-eslint/indent": [2, 2],
    "no-console": "off",
    "import/no-unresolved": [2, { "commonjs": true, "amd": true }],
    "import/named": 2,
    "import/namespace": 2,
    "import/default": 2,
    "import/export": 2
  }
}

ฉันติดตั้ง eslint-plugin-impor & eslint-import-resolver-typescript และฉันไม่สามารถหาสาเหตุได้ฉันได้รับข้อผิดพลาดนั้น


คำตอบ:


69

เพิ่มรหัสต่อไปนี้เพื่อrules:

"rules": {
   "import/extensions": [
      "error",
      "ignorePackages",
      {
        "js": "never",
        "jsx": "never",
        "ts": "never",
        "tsx": "never"
      }
   ]
}

airbnbESLint config ที่นำไปสู่ปัญหา


9
ทำงาน! ขอบคุณ (ผู้อ่านอื่น ๆ : ตรวจสอบให้แน่ใจว่าคุณวางไว้ภายใต้ "กฎ" ไม่ใช่ "การตั้งค่า" ... )
Venryx
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.