Мне надо сгенерить произвольное количество инпутов с name, приходящими с бэка. Я делаю так:
const { control, register } = useForm();
const { fields, append } = useFieldArray({
control,
name: "editFields",
});
и затем в юзэффекте заполняю данными:
documentDetail?.template?.items?.map(({ name, title, type }) => {
append({ name, title, type });
});
Но когда я в JSX маплюсь по этому fields, TS ругается на несуществующие поля: TS2339: Property 'name' does not exist on type 'Record"id", string>'.
Ну так типизируй форму 🤷♀️
Мб я туплю, но где я тут const { fields, append } = useFieldArray() скажу, что fields должна быть определённого типа?
https://react-hook-form.com/ts
я знаю, где дока
Там первый же пример олло
зачем ты в юзэффекте заполняешь данными, надо в defaultValues
useForm({ defaultValues: ... })
спрашивай, если что, у меня под рукой проект с useFieldArray
да вот мне бы протипизировать его, но стенд упал, теперь не посмотришь %)
Обсуждают сегодня