React:formik 表单,如何在回调函数内提交后使用状态
IT技术
reactjs
react-redux
formik
2021-05-25 01:37:57
1个回答
在 中JavaScript
,默认情况下不绑定类方法。
如果您忘记绑定this.LoginApp
并将其传递给onSubmit
,this
将undefined
是实际调用该函数时(正如您已经注意到的)。
这不是 React 特定的行为;它是 JavaScript 中函数如何工作的一部分。
一般来说,如果你引用一个没有()
在它后面的方法,比如onSubmit={this.LoginApp}
,你应该绑定那个方法。并且为了避免性能问题,一般建议在构造函数中绑定或使用类字段语法。这是 React 团队的一篇很好的文章。
constructor(props) {
this.state = {...};
// This binding is necessary to make `this` work in the callback
this.LoginApp = this.LoginApp.bind(this);
}