Как добавить поле массива в окончательной форме?

Я пытаюсь использовать final-form в нереагирующей среде. В официальной документации нет примеров:(Кто-нибудь может привести пример, как добавить поле массива, особенно с правилами валидации?

Например, я могу зарегистрировать общее поле, как это

const initialState = {};
const finalForm = createForm({
  onSubmit: values => console.log(JSON.stringify(values, 0, 2)),
  mutators: { ...arrayMutators },
  initialValues: {
    name: 'John',
    customers: [],
  },
});

finalForm.registerField(
  'name',
  fieldState => {
    initialState.name = fieldState;
  }, {}, {
    getValidator: () => value => (value === '' ? 'Required' : undefined),
  },
);

И измени это так

const nameEl = document.querySelector('.js-name');
nameEl.addEventListener('change', e => initialState.name.change(e.target.value));
nameEl.addEventListener('blur', () => initialState.name.blur());
nameEl.addEventListener('focus', () => initialState.name.focus());

Но я понятия не имею, что написать для поля массива:(

0 ответов

Другие вопросы по тегам