首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何重置/清除有条件呈现的Formik FieldArray?

如何重置/清除有条件呈现的Formik FieldArray?
EN

Stack Overflow用户
提问于 2021-04-12 18:54:32
回答 1查看 19关注 0票数 0

使用Formik,我通过选择列表值有条件地呈现,该列表值有两个字段,即FieldArray和age。

我的问题是,假设我已经呈现了这个与姓名和年龄相关的FieldArray,并创建了5行信息,但我随后决定将选择列表值更改为另一个隐藏此FieldArray的值。在执行此操作时,如何清除/重置此FieldArray为空?

EN

回答 1

Stack Overflow用户

发布于 2021-04-12 19:21:17

根据表单组件的结构,有多种方法可以做到这一点。

这里有一种方法,它使用Formik导出的setFieldValue函数来显式地设置字段的值。

代码语言:javascript
运行
复制
const FormComp = () => {
  return (
    <div>
      <Formik>
        {({ values, setFieldValue }) => (
          <Form>
            <select
              onChange={(e) => {
                const {value} = e.target;
                let shouldResetFieldArray = value !== 'showFieldArray'; // replace with actual condition
                if (shouldResetFieldArray) {
                  setFieldValue("fieldArrayKey", []); // reset fieldArrayKey to empty array [];
                }
              }}
            ></select>
          </Form>
        )}
      </Formik>
    </div>
  );
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67057118

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档