我已经四处寻找解决这个问题的办法了。他们都建议在你的tsconfig中添加"jsx": "react"。json文件。我已经做到了。另一个是添加“include:[]”,我也这样做过。然而,当我试图编辑.tsxfiles时,我仍然得到错误。下面是我的tsconfig文件。

{
    "compilerOptions": {
        "module": "commonjs",
        "target": "es5",
        "allowJs": true,
        "checkJs": false,
        "jsx": "react",
        "outDir": "./build",
        "rootDir": "./lib",
        "removeComments": true,
        "noEmit": true,
        "pretty": true,
        "skipLibCheck": true,
        "strict": true,
        "moduleResolution": "node",
        "esModuleInterop": true
    },
    "include": [
        "./lib/**/*"
    ],
    "exclude": [
        "node_modules"
    ]
}

任何建议都会很有帮助。我使用babel 7编译所有的代码与env, react和typescript预设。如果你们需要更多的文件来帮助调试,请告诉我。


当前回答

对于正在阅读的读者,请转到tsconfig。将这一行从react-jsx改为react:

{
  "compilerOptions": {
    "jsx": "react"
  }
}

额外的好处:尝试将IDE TS版本设置为最新的(atm 4.2),在vscode CMD + SHIFT + P中更改它。

其他回答

我必须把我的整个应用程序添加到include中。

我的tsconfig。Json是这样的:

{
    "compilerOptions": {
    "module": "commonjs",
    "declaration": true,
    "removeComments": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "allowSyntheticDefaultImports": true,
    "target": "es6",
    "sourceMap": true,
    "outDir": "./dist",
    "baseUrl": "./",
    "incremental": true,
    "jsx": "react",
    "allowJs": true
  },
  "include": ["./"]
}

对我来说,重新启动IDE就是解决办法。重新启动后,弹出一个消息框,显示我没有安装任何typescript,你想安装typescript 3.3吗? 我安装了它,现在它工作得很好。请看这里的输出窗口

添加"jsx": "react"到jsconfig。Json不适合我,但“jsx”:“preserve”做到了:

jsconfig。Json / tsconfig.json:

{
  "compilerOptions": {
    "jsx": "preserve"
  }
}

重新启动我的IDE没有帮助。重启TypeScript服务器确实解决了这个问题。

我有一个monorepo, Webstorm自动选择了一个旧版本的TypeScript作为子包。修复方法是在页脚单击TypeScript X.X.X,然后选择Configure TypeScript…并选择正确的软件包,这对我来说在Webstorm 2021.1中是有效的