首页 > 解决方案 > 自动导入总是提示文件类型不正确(tsx -> js),如何解决?

问题描述

当我在 vscode 中导入 React 组件时,vscode 建议我导入文件xxx/index.js,但源文件有.tsx扩展名。

我试过设置allowJs: truetsconfig.json但它不起作用。

tsconfig

{
  "compilerOptions": {
    "sourceMap": false,
    "declaration": false,
    "noImplicitAny": true,
    "allowSyntheticDefaultImports": true,
    "strictNullChecks": true,
    "moduleResolution": "Node",
    "noUnusedLocals": true,
    "noUnusedParameters": true,
    "outDir": "./public",
    "module": "esNext",
    "target": "es5",
    "jsx": "react",
    "lib": [
      "dom",
      "es6",
      "esnext",
    ],
    "experimentalDecorators": true,
    "allowJs": false,
    "allowUnreachableCode": false,
  },
  "include": [
    "./src/**/*"
  ],
  "exclude": [
    "./node_modules",
    "./public"
  ]
}

网络包配置

resolve: {
    // Add '.ts' and '.tsx' as resolvable extensions.
    extensions: [".ts", ".tsx", ".js", ".jsx", ".json"]
  },

例如,当我导入文件时a/b/c/index.tsx,vscode 应该建议我使用以下选项之一,而不是a/b/c/index.js

  1. a/b/c/index.tsx
  2. a/b/c.

标签: reactjsvisual-studio-code

解决方案


推荐阅读