如何在 react-final-form 中设置更改 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 类型但找不到。 反正我可以在 jsx 中设置 FormData 吗? 还有其他我可以做得更好的选择吗?
最佳答案
react-final-form
从版本 6.1.0 开始支持值类型.
您可以通过简单地向 Form
组件提供通用类型来实现它。
import { withTypes } from 'react-final-form'
inteface IValues {
name: string;
}
const { Form } = withTypes<IValues>()
<Form onSubmit={(values: IValues) => {}}>
关于reactjs - 如何设置 react-final-form onSubmit 值参数类型 TypeScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54269600/