【问题标题】:what is the use of 'jsx' property in tsconfig.jsontsconfig.json 中“jsx”属性的用途是什么
【发布时间】:2020-11-01 16:20:44
【问题描述】:

我使用tsc --init 生成了 tsconfig.json,

然后我在 .tsx 文件中编写了 react 代码,得到了错误 Cannot use JSX unless the '--jsx' flag is provided

我偶然发现了 tsconfigjsx 设置

jsx 在评论模式下为

// "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */

那么这三个选项是什么意思?即preservereact-nativereact

【问题讨论】:

    标签: reactjs typescript jsx


    【解决方案1】:

    jsx 属性允许我们在项目中使用 .tsx 文件

    下面是使用 React 和 Typescript 的两个步骤

    1.使用 .tsx 扩展名命名您的文件

    2.启用jsx选项

    TypeScript 附带三种 JSX 模式:preserve、react 和 react-native。

    这些模式只影响发射阶段 - 类型检查不受影响。

    preserve 模式会将 JSX 保留为输出的一部分,以供另一个转换步骤(例如 Babel)进一步使用。此外,输出将包含一个 .jsx 文件

    react模式会发出React.createElement,使用前不需要经过JSX转换,输出会有.js文件扩展名。
    react-native 模式相当于保留所有 JSX,但输出将改为具有 .js 文件扩展名。

    https://www.typescriptlang.org/docs/handbook/jsx.html#basic-usage

    【讨论】:

      猜你喜欢
      • 2019-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多