ريأكت ج إس - تمرير خواص مخصصة إلى مكون حقل مخصص باستخدام فورميك
مساء الخير جميعاً، لدي مشكلة صغيرة مع حقول Formik المخصصة..
أنا أستخدم Field مخصص خاص بي مثل:
<Field name="pdfFile" component={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 كيفية حل هذه المشكلة. هل واجه أحدكم مشاكل مشابهة ويعرف كيفية حلها؟
شكراً جزيلاً على مساعدتك!
الإجابة رقم 1
إذا مررت بخاصية إلى Field لا تُستخدم في Field، فسيتم تمريرها إلى المكون في الخاصية component.
لذلك يمكنك فعلها هكذا
<Field
name="pdfFile"
width={pdfWidth}
height={pdfHeight}
component={FileUpload}
/>
واحصل على القيمة في خصائص المكون
const FileUpload = (props) => {
// props.width
// props.height
return ( /* ... */ )
}
