Avatar ·

كيفية تعريف نوع لدالة الاستدعاء (callback) في TypeScript بشكل صحيح؟

مرحباً بالجميع! لقد بدأت مؤخراً في تعلم TypeScript وواجهت مشكلة عند تعريف الأنواع لدوال الاستدعاء (callback functions). لدي دالة تستقبل دالة استدعاء (callback) وتستدعيها بعد معالجة بعض البيانات. إليك مثال مبسط: ```typescript function processData(data: string, callback) { const result = data.toUpperCase(); callback(result); } ``` TypeScript يعترض على `callback` — يقول أن المعامل له نوع `any` ضمنياً. أفهم أنني بحاجة لتحديد النوع بشكل صريح لدالة الاستدعاء، لكنني لا أعرف كيفية القيام بذلك بشكل صحيح. لقد جربت خيارات مختلفة، على سبيل المثال: ```typescript function processData(data: string, callback: Function) { // ... } ``` لكن هذا يعمل، لكنه لا يعطي تحكماً في الوسائط التي تستقبلها دالة الاستدعاء وما ترجعه. على سبيل المثال