我定义:
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中未定义。
问题:如何在HOC中访问Form1.props?
答案 0 :(得分:3)
您需要将道具作为handleSubmit
中的第二个参数之一传递,并且可以按以下方式访问道具:
const Form2 = withFormik({
handleSubmit(values, { props, resetForm, setErrors, setSubmitting }) {
...
props.callback();
},
....
})(Form1);