我收到上述错误,我真的不明白我在问什么。
我有一个叫做state的类型,我像下面这样传递,我认为它是在后面。
type State = {
from: undefined,
to: undefined,
range?: object,
}
我将其设置为可选,因为在构造函数中未设置范围状态,因为不需要它。
constructor(props) {
super(props);
this.state = {
from: undefined,
to: undefined,
};
this.handleDayClick = this.handleDayClick.bind(this);
}
然后在下面的方法中进行设置,在我添加到问题的屏幕截图中出现错误的地方。
handleDayClick(day) {
const range = DateUtils.addDayToRange(day, this.state);
const { handleDateUpdate } = this.props;
handleDateUpdate(range);
this.setState(range);
}
我真的不知道如何解决此错误。我是TS的新手,并且发现错误消息非常难以理解。
答案 0 :(得分:1)
setState
接受一个对象作为参数:
this.setState({to: range.to, from: range.from});
答案 1 :(得分:0)
您要将整个状态对象设置为存储在range
中的对象,而只想设置range
属性。语法如下:
this.setState({ range });