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

在同一页上创建多个redux-form并使用相同的按钮提交

,可以通过以下步骤实现:

  1. 首先,确保你已经安装了redux-form库,并在你的应用程序中引入它。
  2. 在你的组件中,使用redux-form的reduxForm高阶函数来创建多个redux-form表单。每个表单都需要一个唯一的form名称,以便在后续的步骤中引用。
代码语言:txt
复制
import React from 'react';
import { reduxForm } from 'redux-form';

const Form1 = () => {
  // 表单1的内容
}

const Form2 = () => {
  // 表单2的内容
}

const MyComponent = () => {
  const Form1Redux = reduxForm({ form: 'form1' })(Form1);
  const Form2Redux = reduxForm({ form: 'form2' })(Form2);

  return (
    <div>
      <Form1Redux />
      <Form2Redux />
      <button type="submit">提交</button>
    </div>
  );
}

export default MyComponent;
  1. 在你的组件中,使用redux的connect函数将表单状态和提交处理程序连接到redux store。
代码语言:txt
复制
import React from 'react';
import { reduxForm, formValueSelector } from 'redux-form';
import { connect } from 'react-redux';

const Form1 = () => {
  // 表单1的内容
}

const Form2 = () => {
  // 表单2的内容
}

const MyComponent = ({ handleSubmit }) => {
  const Form1Redux = reduxForm({ form: 'form1' })(Form1);
  const Form2Redux = reduxForm({ form: 'form2' })(Form2);

  const onSubmit = (values) => {
    // 处理表单提交
    console.log(values);
  }

  return (
    <div>
      <Form1Redux />
      <Form2Redux />
      <button type="submit" onClick={handleSubmit(onSubmit)}>提交</button>
    </div>
  );
}

const selector = formValueSelector('form1', 'form2');

const mapStateToProps = (state) => {
  const { form1, form2 } = selector(state, 'form1', 'form2');
  return {
    form1,
    form2,
  };
}

export default connect(mapStateToProps)(reduxForm({ form: 'myComponent' })(MyComponent));

在上面的代码中,我们使用了redux-form的formValueSelector函数来获取每个表单的值,并将它们作为props传递给组件。然后,我们使用redux的connect函数将表单状态和提交处理程序连接到redux store,并使用handleSubmit函数来处理表单的提交。

这样,你就可以在同一页上创建多个redux-form,并使用相同的按钮提交它们了。每个表单的值将通过onSubmit函数进行处理。你可以根据需要在onSubmit函数中执行相应的操作,比如发送网络请求或更新redux store中的数据。

关于redux-form的更多信息和使用方法,你可以参考腾讯云的相关产品文档:redux-form产品介绍

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

相关·内容

Redux 包教包会(一):解救 React 状态危机

前端应用的状态管理日益复杂。随着大前端时代的到来,前端愈来愈注重处理逻辑,而不只是专注 UI 层面的改进,而以 React 为代表的前端框架的出现,大大简化了我们编写 UI 界面的复杂度。虽然 React 提供了 State 机制实现状态管理,也有诸如“状态提升”等开发约定,但是这些方案只适用于小型应用,当你的前端应用有多达 10 个以上页面时,如何让应用状态可控、让协作开发高效成为了亟待解决的问题,而 Redux 的出现正是为了解决这些问题而生的!Redux 提出的“数据的唯一真相来源”、单向数据流、“纯函数 Reducers” 大大简化了前端逻辑,使得我们能够以高效、便于协作的方式编写任意复杂的前端应用。本篇教程致力于用简短的文字讲透 Redux,在实战中掌握 Redux 的概念和精髓。

02
领券