首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

尝试在FieldArray react JS中根据条件呈现字段

FieldArray 是 ReactJS 表单库 Formik 中的一个组件,用于处理动态字段数组。它允许我们根据条件动态地呈现字段。

在 FieldArray 中,我们可以使用 map 函数来遍历字段数组,并根据条件渲染相应的字段。以下是一个示例代码:

代码语言:txt
复制
import { Formik, Field, FieldArray } from 'formik';

const MyForm = () => {
  return (
    <Formik
      initialValues={{ fields: [] }}
      onSubmit={(values) => {
        // 处理表单提交逻辑
      }}
    >
      {({ values }) => (
        <form>
          <FieldArray name="fields">
            {({ push, remove }) => (
              <div>
                {values.fields.map((field, index) => (
                  <div key={index}>
                    <Field name={`fields[${index}]`} />
                    {field === 'condition' && (
                      <Field name={`fields[${index}].additionalField`} />
                    )}
                    <button type="button" onClick={() => remove(index)}>
                      删除字段
                    </button>
                  </div>
                ))}
                <button type="button" onClick={() => push('')}>
                  添加字段
                </button>
              </div>
            )}
          </FieldArray>
          <button type="submit">提交</button>
        </form>
      )}
    </Formik>
  );
};

export default MyForm;

在上面的示例中,我们使用 FieldArray 组件来处理名为 "fields" 的字段数组。通过 map 函数遍历数组中的每个字段,并根据条件渲染相应的字段。在这个例子中,如果字段的值为 "condition",则会呈现一个额外的字段。

这是一个简单的示例,你可以根据自己的需求进行扩展和修改。如果你想了解更多关于 FieldArray 的用法和参数,可以参考 Formik 官方文档中的相关部分:FieldArray - Formik

希望这个答案能够帮助到你!如果你对其他问题有任何疑问,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • React 并发功能体验-前端的并发模式已经到来。

    React 是一个开源 JavaScript 库,开发人员使用它来创建基于 Web 和移动的应用程序,并且支持构建交互式用户界面和 UI 组件。React 是由 Facebook 软件工程师 Jordan Walke 创建,React 的第一个版本在七年前问世,现在,Facebook 负责维护。React框架自首次发布以来,React 的受欢迎程度直线飙升,热度不减。 2020 年 10 月,React 17 发布了,但令人惊讶的是——“零新功能”。当然,这并不是真的表示没有任何新添加的功能,让广大程序员使用者兴奋。事实上,这个版本为我们带来了很多重大功能的升级及16版本的bug修复,并推出了:Concurrent Mode 和Suspense。 虽然这两个功能尚未正式发布,这些功能已提供给开发人员进行测试。一旦发布,它们将改变 React 呈现其 UI 的方式,从而达到双倍提高性能和用户体验。

    02

    (转载非原创)React 并发功能体验-前端的并发模式已经到来。

    React 是一个开源 JavaScript 库,开发人员使用它来创建基于 Web 和移动的应用程序,并且支持构建交互式用户界面和 UI 组件。React 是由 Facebook 软件工程师 Jordan Walke 创建,React 的第一个版本在七年前问世,现在,Facebook 负责维护。React框架自首次发布以来,React 的受欢迎程度直线飙升,热度不减。 2020 年 10 月,React 17 发布了,但令人惊讶的是——“零新功能”。当然,这并不是真的表示没有任何新添加的功能,让广大程序员使用者兴奋。事实上,这个版本为我们带来了很多重大功能的升级及16版本的bug修复,并推出了:Concurrent Mode 和Suspense。 虽然这两个功能尚未正式发布,这些功能已提供给开发人员进行测试。一旦发布,它们将改变 React 呈现其 UI 的方式,从而达到双倍提高性能和用户体验。

    00

    前端必读2.0:如何在React 中使用SpreadJS导入和导出 Excel 文件

    最近我们公司接到一个客户的需求,要求为正在开发的项目加个功能。项目的前端使用的是React,客户想添加具备Excel 导入/导出功能的电子表格模块。 经过几个小时的原型构建后,技术团队确认所有客户需求文档中描述的功能都已经实现了,并且原型可以在截止日期前做好演示准备。但是,在跟产品组再次讨论客户需求时,我们发现之前对有关电子表格的部分理解可能存在偏差。 客户的具体需求点仅仅提到支持双击填报、具备边框设置、背景色设置和删除行列等功能,但这部分需求描述不是很明确,而且最后提到“像Excel的类似体验”,我们之前忽略了这句话背后的信息量。经过与客户的业务需求方的直接沟通,可以确认终端用户就是想直接在网页端操作Excel,并且直接把编辑完成的表格以Excel的格式下载到本地。

    02
    领券