如何告诉Typescript编译器在.ts文件中编译JSX?

ali*_*ari 7 typescript reactjs visual-studio-code

我有一些.ts文件中包含.jsx语法.我想告诉tsc编译我的这些.ts文件,如编译.tsx文件.

有可能配置tsc这样做吗?

如何配置vscode以支持这些文件中JSX语法的语法突出显示?

Nit*_*mer 6

不,你必须在.tsx文件中包含你的反应代码,正如文档所说:

为了使用JSX,你必须做两件事.

  1. 使用.tsx扩展名命名您的文件
  2. 启用jsx选项

这样做的原因是你在这种形式中使用的打字稿:

interface Point {
    x: number;
    y: number;
}

let p = <Point> {};
Run Code Online (Sandbox Code Playgroud)

tsx但是在文件中,这是不可能的,因为<Point>可以是Point组件的标记.
因为在tsx文件中无法进行转换,您需要键入assert:

let p = {} as Point;
Run Code Online (Sandbox Code Playgroud)

但是常规.ts文件仍然支持转换形式,如果你在其中有jsx代码,将导致冲突.