在 VS Code 中打开 JSDoc 会产生 "Cannot use JSX unless the '--jsx' flag is provided"

Turning on JSDoc in VS Code produces "Cannot use JSX unless the '--jsx' flag is provided"

我使用 Create React App 创建了 React 应用程序。它使用 ES6.

我在这个应用程序中使用 JSDoc 来引入类型安全。使用 Visual Studio 代码中的以下选项打开类型安全:

"javascript.implicitProjectConfig.checkJs": true

类型检查工作正常,除了任何使用 jsx 的文件都会出现以下错误。

Cannot use JSX unless the '--jsx' flag is provided

这是因为该项目对包含 JSX 的文件使用 .js 扩展名。项目中的文件太多,所以我不想将扩展名更改为.jsx

我发现关闭此警告的唯一方法是添加具有以下内容的 tsconfig.json 文件:

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

但是,创建 tsconfig.json 文件会带来其他问题,例如测试现在中断,因为 CRA 认为这是一个 TypeScript 项目,但事实并非如此。

所以问题是:有没有办法在不创建 tsconfig.json 文件的情况下抑制“无法使用 jsx...”错误?

我认为在这种情况下使用 jsconfig.json 是最好的方法,因为您的存储库是 js 存储库。现在,您只需将上面的 tsconfig.json 替换为位于根级别的 jsconfig.json

jsconfig.json

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

你可以在这里阅读我处理js repo: https://code.visualstudio.com/docs/nodejs/working-with-javascript