我的第一部分
import React, { Component } from 'react';
import ReactDOM from 'react-dom';
interface AppProps {
name: string;
}
interface AppState {
words: string[];
}
class App extends Component<AppProps, AppState> {
constructor() {
super();
this.state = {
words: ['foo', 'bar']
};
}
render() {
const { name } = this.props;
return (<h1>Hello {name}!</h1>);
}
}
const root = document.getElementById('root');
ReactDOM.render(<App name="Foo Bar" />, root);
将 TypeScript 与 React 一起使用时,一旦下载了 React DefinitelyTyped 类型定义(npm install --save @types/react
),每个组件都会要求你添加类型注释。
你这样做:
class App extends Component<AppProps, AppState> { }
其中 AppProps
和 AppState
分别是组件的 props 和 state 的接口(或类型别名)。