reactjs - 福米克 | 错误 useFormikContext formik 值未定义
问题描述
我有以下代码:
const {
values,
handleChange,
setFieldValue,
handleSubmit,
isSubmitting,
isValid
} = useFormikContext();
我在 const comp 中有 formik 形式
const Body = () => {
...
return(
<Formik
....
....>
{props=>{
<Form>
... then some fields here... etc
...
...
</Form>
}}
</Formik>
}
它给了我这个错误:
TypeError:无法解构“对象(...)(...)”的属性“值”,因为它未定义。
我也检查了这个问题: Formik 2.0.1 useFormikContext formik values undefined
但是它甚至在 Body 中编写 useFormikContext() 也不起作用
解决方案
这个钩子只有在有一个可以从中拉取的父 Formik React Context 时才起作用。
确保您在这样的事情useFormikContext
的后代中使用:<Formik>
<Formik>
<Form>
<MyApp />
</Form>
</Formik>
// MyApp.jsx
const MyApp = () => {
const formik = useFormikContext();
// do what you want with formik
}
推荐阅读
- apache-spark - 使用 jdbc 将数据帧保存到 hive 或从 Hive 查询 spark 数据帧临时视图
- r - 是否可以在 R 中使用 plotly 设置主题?
- excel - 将 Microsoft Office 架构中的 XML 文档批量导入 Excel
- uicollectionviewcell - 如何将渐变层添加到集合视图单元格
- neo4j - 带有 js-neo4j-driver 查询数组的 Neo4j 事务
- amazon-web-services - Elastic Beanstalk 疯狂地终止和重新创建实例
- javascript - 如何按x坐标y坐标对像素进行排序?
- python - 使用 DataArray ax.set_title 绘制问题
- xslt - XSLT 代码根据值选择不同的属性
- azure-devops - 运行 terraform init 步骤时出现 Azure Devops 管道错误