Abh*_*ram 4 jsx reactjs formik
我在我的React应用程序中使用Formik库。最初,我在构造函数中声明了状态值,在componentDidMount中,我使用该应用程序响应调用API来更新状态值,有人可以帮助我将状态值传递给fomik初始值
在我的情况下,formik采用了在构造函数中声明的初始状态值。
class Dropdown extends Component {
constructor(props) {
super(props);
this.state = {
//some data
};
}
componentDidMount() {
//api call
this.setState( {
//update state values with api response data
});
}
render() {
return (
<Formik
initialValues={this.state}
validate={validate(validationSchema)}
onSubmit={onSubmit}
render={
({
values,
errors,
touched,
status,
dirty,
handleChange,
handleBlur,
handleSubmit,
isSubmitting,
isValid,
handleReset,
setTouched
}) => (
//form uses initialValues
)} />
)
}
}
Run Code Online (Sandbox Code Playgroud)
小智 17
回答归功于 Abhiram,但如果您已更新为 hooks:
useFormik({
initialValues: initialData,
enableReinitialize: true,
onSubmit: values => {
// Do something
}
});
Run Code Online (Sandbox Code Playgroud)
将enableReinitialize添加到formik解决了我的问题
<Formik
enableReinitialize
..
render={
({
..
}) => (
//form uses initialValues
)} />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2154 次 |
| 最近记录: |