我无法用我从 redux 获得的值更新 Formik。
这是我的 mapPropsToValues:
mapPropsToValues(props) {
const {bid: {total=42, token_quantity: quantity= null}} = props
return { total, quantity }
}
我也加入了enableReinitialize: true
我连接它的方式是,total 和 token_quantity 都是我从 redux 获得的值,我需要从商店中填充它们。
我的总计验证模式是:
total: Yup.number().required('Required')
我的 Field 组件是:
<Field name="total" type="text" />
我的代码的工作方式是,当用户单击按钮时,将调度一个动作,然后商店返回total
and quantity
。第一次完美运行,值显示在字段中。我遇到的问题是,如果用户随后在字段中输入,无论他们之后是否单击按钮,该值都不会更新。似乎有两个调用setFeildValue
,一个是来自 redux 的值,另一个是用户输入的显示值。
有人可以告诉我我做错了什么,因为我无法让它工作而且我已经花了两天时间。