--scripts-version=react-scripts-ts
,已过时,官方不推荐使用了create-react-app my-app --scripts-version=react-scripts-ts
--template typescript
创建create-react-app my-react-ts-app --template typescript
$ npx create-react-app my-app --typescript
或者
$ yarn create react-app my-app --typescript
$ npm install --save typescript @types/node @types/react @types/react-dom @types/jest
或者
$ yarn add typescript @types/node @types/react @types/react-dom @types/jest
class Component<P, S> {
readonly props: Readonly<{ children?: ReactNode }> & Readonly<P>;
state: Readonly<S>;
}
import * as React from 'react';
// 定义好 props 的字段
interface IProps {
color: string,
size?: string,
}
// 定义好 state 的字段
interface IState {
count: number,
}
class App extends React.Component<IProps, IState> {
public state = {
count: 1,
}
public render () {
return (
<div>Hello world</div>
)
}
}