大家晚上好, 我在使用自定义Formik字段时遇到了一个小问题。
我正在使用自己的自定义Field
,例如:
<Field name="pdfFile" component={FileUpload} />
FileUpload道具如下:
interface FileUploadProps {
field: FieldInputProps<any>; //These props should probably be derived from Formik
form: FormikProps<any>;
width: string;
height: string;
}
字段和表单已正确传递到组件中,但是如何将宽度和高度传递到组件中?尝试过,但没有成功。
<Field
name="pdfFile"
component={(props: any) => (
<FileUpload
field={props.field}
form={props.form}
width={pdfWidth}
height={pdfHeight}
/>
)}
/>
不幸的是,Formik API没有提到如何解决此问题。有没有人遇到过类似的问题,并且知道如何解决这个问题?
非常感谢您的帮助!
答案 0 :(得分:2)
如果您将Field
中未使用的道具传递给Field
,它将被传递到component
道具中的组件。
所以您可以像这样
<Field
name="pdfFile"
width={pdfWidth}
height={pdfHeight}
component={FileUpload}
/>
并获取组件props中的值
const FileUpload = (props) => {
// props.width
// props.height
return ( /* ... */ )
}