TypeScript 和 React 新手在这里。为什么 TypeScript 不会因为constructor(foo: string)
输入类型不匹配而对我大喊大叫{foo: string}
?(注意:其中一个是字符串,另一个是对象。)
TypeScript 会很高兴地编译它,当然生成的代码会爆炸。我试图打开 tsconfig.json 必须提供的所有选项。我正在使用打字稿 2.5.3。
有没有什么办法,比如打字稿配置、代码更改或其他任何方法来强化代码以避免这种情况?感谢任何想法,我的目标是编写稳定的代码。
从'react'导入*作为React;从 'react-dom' 导入 * 作为 ReactDOM;
class App extends React.Component<{ foo: string }, { foo: string }> {
// expects string
constructor(foo: string) {
super();
this.state = {
foo: foo
}
}
render() {
return <div>{this.state.foo}</div>
}
}
// Passes object { foo: string }
ReactDOM.render(<App foo="foo" />, document.getElementById('root'))
编辑:简化问题