我将此代码视为将空状态定义为空,但是当我编写此代码时,没有任何错误.
export default class extends Component<Props, {}> {
state = {
foo: "bar"
};
}
Run Code Online (Sandbox Code Playgroud)
这也不是错误:
export default class extends Component<Props, {}> {
constructor(props) {
super(props);
this.setState({ foo: "bar" });
}
Run Code Online (Sandbox Code Playgroud)
我在这里显然不了解TypeScript.如果我向传递的状态对象添加一个参数,则两个错误都显示状态差异.似乎{}没有提供任何防止被覆盖的警惕.我想从lint的角度确保状态总是被输入并作为参数传递或在React Component的扩展中作为null,我该如何设置它?