Как заполнить форму начального значения? - PullRequest
0 голосов
/ 25 апреля 2020

Я хотел бы создать «форму обновления», поэтому я пытаюсь заполнить начальные значения. Я не понимаю, почему, но моя форма продолжает отображать пустые поля, хотя я получаю свои данные.

Я получил из своей базы данных свой индикатор (IndicatorSelected), я могу отобразить его в своей консоли.

Object {
    "display_order": 1,
    "graphic_type": "Camembert",
    "hidden": 1,
    "id_indicator": 4,
    "id_user": undefined,
    "title": "2",
    "type": "Text",
  }

Не могли бы вы мне помочь?

const [indicatorSelected, setIndicatorSelected] = useState(null);
const [initialValue, setInitialValue] = useState({
   title: "",
   hidden: false,
   order: "",
   graphicType: ""
});

    useEffect(() => {
        if(!indicatorSelected) return;
        setInitialValue({
            title: indicatorSelected.title,
            hidden: indicatorSelected.hidden,
            order: indicatorSelected.display_order,
            graphicType: indicatorSelected.graphic_type
        })
    }, [indicatorSelected]);

return(  ...
        <Formik
                initialValues={initialValue} ..> ...);

Заранее спасибо

Ответы [ 2 ]

1 голос
/ 25 апреля 2020

Вы установили enableReinitialize?

По умолчанию Formik не инициализирует значения после инициализации.

return(  ...
        <Formik
                enableReinitialize={true}
                initialValues={initialValue} ..> ...);
1 голос
/ 25 апреля 2020

Вам нужно иметь enableReinitialize, см .: https://github.com/jaredpalmer/formik/issues/811

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...