Как установить значения response-final-form в onSubmit для параметра типа TypeScript
Как я могу установить изменить тип значения onSubmit в реакции-окончательной форме.
inteface IValues {
name: string;
}
<Form onSubmit={(values: IValues) => {}}> // Error happens here
// Types of parameters 'values' and 'values' are incompatible.
// Type '{}' is missing the following properties from type 'IFormValues': name
Это работает, но я не могу получить value.name
<Form onSubmit={(values: object) => {
// Property 'name' does not exist on type 'object'
values.name
}}>
Я могу привести к IValues как ниже, чтобы извлечь имя.
<Form onSubmit={(values: object) => {
const { name } = values as IValues;
}}>
onSubmit из Config, я попытался найти способ установить тип FormData, но не смог его найти. В любом случае я могу установить FormData в JSX? И есть ли другой вариант, который я могу сделать лучше?
0 ответов
Типизация значения поддержки response-final-form начиная с версии 6.1.0 (https://github.com/final-form/react-final-form/releases/tag/v6.1.0)
Вы можете добиться этого, просто предоставив универсальный тип для Form
составная часть.
import { withTypes } from 'react-final-form'
inteface IValues {
name: string;
}
const { Form } = withTypes<IValues>()
<Form onSubmit={(values: IValues) => {}}>