setState 希望我指定状态接口的所有属性



我正在使用 React 15 和 TypeScript 1.8。

我的组件的状态对象具有多个属性。我定义了一个描述其类型的接口,用class MyComponent extends React.Component<any, MyStateInterface>编写我的组件,为构造函数方法中的每个属性设置初始值,一切都很好。

我遇到的问题是当调用this.setState仅更新我的一个属性时。TypeScript 抱怨我没有设置所有这些("属性丢失"错误)。我在 StackOverflow 上搜索了一个解决方案,发现其他人对此抱怨,说唯一的解决方案是简单地声明所有字段都是可选的。

然而,这是一个 18 个月前的答案,我知道 TypeScript 和 React 都进展很快。我只是想知道这在过去 500 天内是否发生了变化,推荐的做法是什么?

我遇到的问题是调用this.setState仅更新我的一个属性时。TypeScript 抱怨我没有设置所有这些

应将状态的所有成员标记为可选。

您可能会认为这是不安全的...但由于新鲜度更高,它仍然经过排版检查。

最新更新