首页 > 解决方案 > React/Redux - 保存选择字段值 onChange

问题描述

我创建了一个组件,可让您添加/删除选择字段(添加按钮的 onClick)。我正在使用 Redux 来保持下拉列表的状态,这样当我来回导航(React Router)时,添加的下拉列表不会丢失。

它似乎正在使用相同的数据(不是单独)更新所有选择下拉列表。所以每当用户输入一个属性时: 我们使用一个react表来添加 1. AttributeName ProficiencySelect 2. AttributeName2 ProficiencySelect2 在代码中我们只有一个选择组件;但是,每次添加属性时,我们都会添加一个选择组件。我们面临的问题是区分每个选择的数据。我们尝试使用以下方法解决此问题,但现在我们不知道如何获取每个下拉列表的数据,因为名称通常是我们可以调用的字符串:


const options = [
    {
        label: '1',
        value: '1'
    },
    {
        label: '2',
        value: '2'
    },
    {
        label: '3',
        value: '3'
    },
    {
        label: '4',
        value: '4'
    },
    {
        label: '5',
        value: '5'
    },
    {
        label: '6',
        value: '6'
    },
    {
        label: '7',
        value: '7'
    },
    {
        label: '8',
        value: '8'
    },
    {
        label: '9',
        value: '9'
    },
    {
        label: '10',
        value: '10'
    }
];
{
   Header: 'Proficiency',
        accessor: 'name',
        Cell: ({value}) => (
        <FormGroup>
          <Field
             component={Select}
             name={value}
             label=""
             options={options}
             validate={required}
         />
       </FormGroup>
     )
},

我们尝试使用以下方法解决此问题,但现在我们不知道如何获取每个下拉列表的数据,因为 name 通常是使用 formValueSelector 捕获数据的字符串,如下所示:

 let templateFormData = formValueSelector('templateForm')(
        state,
        'name',
        'description',
        'cosa',
        'department',
        'suppliers'
    );

知道如何解决这个问题吗?

标签: reactjsreduxreact-reduxredux-form

解决方案


推荐阅读