tsconfig.json

这是一个最小的 tsconfig,可以帮助你启动和运行。

{
    "include": [
        "src/*"
    ],
    "compilerOptions": {
        "target": "es5",
        "jsx": "react",
        "allowSyntheticDefaultImports": true
    }
}

让我们逐个浏览一下这些属性:

include

这是一个源代码数组。这里我们只有一个条目 src/*,它指定 src 目录中的所有内容都包含在编译中。

compilerOptions.target

指定我们要编译为 ES5 目标

compilerOptions.jsx

将此设置为 true 将使 TypeScript 自动将你的 tsx 语法从 <div /> 编译为 React.createElement("div")

compilerOptions.allowSyntheticDefaultImports

方便的属性,允许你导入节点模块,就像它们是 ES6 模块一样,所以不要这样做

import * as React from 'react'
const { Component } = React

你可以这样做

import React, { Component } from 'react'

没有任何错误告诉你 React 没有默认导出。