Как мне ссылаться на динамически создаваемое текстовое поле (внутри Formik)? - PullRequest
0 голосов
/ 05 февраля 2020

У меня есть форма Formik, включая начальное значение descriptions (инициализированное как пустой массив), в котором я хотел бы сохранить возможные результаты текстового поля.

Текстовые поля должны быть только созданный по принципу ad ho c, путем изменения значения соответствующего флажка: пользователь устанавливает флажок для «X Data», а также при установке флажка отображается соответствующее поле. У меня эта часть работает.

Проблема, с которой я столкнулся, заключается в том, что недавно обработанный ввод не назван! Я предполагаю, что мне нужно назвать что-то вроде descriptions[x_data]. Это правильно? Как мне заставить это работать? Вот урезанная версия кода, с которым я работаю до сих пор.

const sectionList = [
  {name: "x_data", label: "X Data"}, 
  {name: "y_data", label: "Y Data"}, 
]

...

<div>
  {sectionList.map(({ name, label }, index) => {
    return (
      <div key={index}>
        <Field component={MyCheckbox} name="sectionChoices" value={label} label={label} />
        {values.sectionChoices.indexOf(label) > -1 && (
          <Field
            component={TextField}
            fullWidth
            variant="outlined"
            name={`descriptions[${name}]`}.  // doesn't seem to work :-(
            label={'Description of ' + label}
          />
        )}
     </div>
    )
  })}
</div>
...