Avatar ·

كتابة أحداث React في TypeScript: كيفية تحديد الأنواع بشكل صحيح للمعالجات؟

مرحبًا بالجميع! لقد بدأت للتو في تعلم TypeScript مع React وواجهت مشكلة — لا أستطيع فهم كيفية كتابة الأحداث بشكل صحيح. في توثيق React الخاص بـ TypeScript، هناك العديد من الأنواع المختلفة، لكنني مرتبك بشأن أي منها يجب استخدامه في كل حالة. إليك مثال بسيط: لدي نموذج مع حقل إدخال، وأريد معالجة حدث onChange. في JavaScript، كنت أكتب ببساطة: ```tsx function handleChange(e) { setValue(e.target.value); } ``` لكن في TypeScript، هذا ينتج خطأ: "Parameter 'e' implicitly has an 'any' type". حاولت كتابة `React.ChangeEvent`، لكنني لست متأكدًا من أن هذا صحيح. وماذا عن حدث onSubmit للنموذج؟ أو onClick للزر؟ هل هناك نوع عام لجميع الأحداث؟ سؤال آخر: كيف يمكن كتابة الأحداث المخصصة أو الأحداث التي تأتي من المكونات الفرعية؟ على سبيل المثال، أمرر إلى المكون prop `onInputChange`، والذي يجب أن يستقبل حدثًا من `` ويقوم بشيء به. ما هو النوع الذي يجب تحديده لهذا prop؟ سأكون ممتنًا