Массив поля формы Redux не может отображать текстовое значение - PullRequest
0 голосов
/ 13 мая 2019

Я использую избыточную форму для представления сетки данных.Избыточная форма инициализируется с помощью

  InputForm = connect(
  state => ({
    initialValues: {
      cashAndInvestments:[
        {title:"Chequing", rate:5, amount:100},
        {title:"Savings for Taxes", rate:4, amount:1000}
      ]
    } 
  }),
  null
)(InputForm);

. Это хорошо работает для части инициализации.Затем я использую массив полей формы избыточности для отображения таблицы.

import React from 'react';
import { Field } from 'redux-form';
import { Table } from "semantic-ui-react";

const RenderAssets = ({ fields }) => (
  <Table.Body>
    {fields.map((asset, index) => (
      <Table.Row key={index}>
        <Table.Cell>
          {asset.title}
        </Table.Cell>
        <Table.Cell>
          <Field 
            name={`${asset}.rate`}
            type="tel" 
            component="input" 
          />
        </Table.Cell>
        <Table.Cell>
          <Field 
            name={`${asset}.amount`} 
            type="tel" 
            component="input" 
          />
        </Table.Cell>
      </Table.Row>
    ))} 
  </Table.Body>
);  

export default RenderAssets;

Тариф и сумма заполняются правильно.Тем не менее, он показывает пустой в Table.Cell для заголовка актива.Я хочу показать заголовок объекта в виде простого текста вместо поля формы.Кто-нибудь может мне помочь?

Спасибо, Питер

1 Ответ

2 голосов
/ 13 мая 2019

Если вы хотите получить доступ к значению элемента fieldArray вне Field, вы можете использовать 3-й параметр fields внутри вашей функции map ( здесь вы найдете документ ):

 {fields.map((asset, index, members) => (
    <Table.Row key={index}>
      <Table.Cell>
        {members.get(index).title} 
   ....
...