【发布时间】:2019-11-27 09:50:17
【问题描述】:
我必须在 setState 更新后调用 2 个函数。
我想使用回调函数。
但问题是当前组件中存在一个函数,而我正在调用子组件的另一个函数(使用 refs)。
代码如下所示:
handleChange_First = (event) => {
const name = event.target.name;
this.setState({
[name]: event.target.value
},() => {this.calculate()});
this.child.handleChange(event)
}
我想在setState 更改后立即致电this.calculate() 和this.child.handleChange(event)。
现在它正在更新当前组件(this.calculate)的值,但子组件(handleChange)的值没有更新。
或者如果有任何替代方法可以在 setState 之后同时调用这两个函数,那也会很有帮助。
【问题讨论】:
-
是子组件的handleChange没有执行还是没有更新值?
-
子组件正在执行,但从当前组件中获取先前的值而不是更新的值。(例如,您在当前组件中输入 1 它不会更改子组件中的任何内容,但是当您输入时2、子组件取1等)