我定义:

class Form1 extends React.Component{
....
}


然后使用withFormic定义HOC:

const Form2 = withFormik({
  handleSubmit(values, { resetForm, setErrors, setSubmitting }) {
    ...
  },
....
})(Form1);


在父组件中,我指定一个回调函数:

<Task2 callback={this.something} />


现在,我希望handleSubmit调用回调函数。
我会做

this.props.callback()


但是中似乎未定义this

问题:如何在HOC中访问Form1.props?

最佳答案

您需要将props作为handleSubmit中的第二个参数之一传递,并且可以按以下方式访问props:

const Form2 = withFormik({
handleSubmit(values, { props, resetForm, setErrors, setSubmitting }) {
...
props.callback();
},
....
})(Form1);

关于reactjs - withFormik如何在handleSubmit中访问包装的表单的 Prop ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52349017/

10-09 17:46