2

我创建了一个由多个组件组成的 react formik 表单。我需要将 useFormik 对象传递给表单的组件。formik 的正确类型是什么?

父表格

 const formik = useFormik({ ...

子组件

interface IAddressBoxProps {
  skip: () => void
  formik: any
}

const AddressBox: React.FC<IAddressBoxProps> = (props: IAddressBoxProps) => {
  const { skip, formik } = props
 ...
4

1 回答 1

9

当您不确定类型时,可以使用typeof formik获取该变量的类型。

钩子签名是

useFormik<Values>(config: FormikConfig<Values>): FormikProps<Values>

所以返回类型是FormikProps一个泛型,它取决于你的表单的值。

import {useFormik, FormikProps} from "formik";

interface MyValues {
    id: number;
}
export const MyComponent = () => {
    const formik: FormikProps<MyValues> = useFormik<MyValues>({});
}

挂钩文档

打字稿游乐场

于 2020-10-09T23:52:11.980 回答