Skip to content

удаление полей с валидацией приводит к ошибке при отправке [bug] #234

Description

@xaota

кейс
поле удалилось из формы (из UI по крайней мере), но имело валидацию (валидация ставилась в контроллере)
при отправке формы падает ошибка валидации

сейчас решается чем-то вроде сноса fieldState при анмаунте компонента

 useEffect(() => {
    return () => {
      form.setFieldState({
        field: name,
        state: {
          active: false,
          blurred: true,
          blurredAfterOuterError: false,
          changed: false,
          changedAfterOuterError: false,
          touched: false,
          touchedAfterOuterError: false,
          validate: undefined,
          _type: 'fieldMeta',
        }
      });
    }
  }, []);

как вариант, обернуть эту штуку в некий removeField

const { remove } = controller({ name });
useEffect(() => () => remove(), []);

или (из любого места)

form.removeField({ name });

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions