معالجة نوع بيانات الحدث في تايب سكريبت


أحاول تحويل كود JavaScript الخاص بي إلى TypeScript (1.8.9) وأتساءل ما هي الطريقة الصحيحة لإعلان أو تحويل البيانات المرفقة بالحدث.

self.onmessage = function(e: Event){
    if(e.data.schedules) processSchedules(e.data.schedules)
};

يتم تمييز جزء data باللون الأحمر بواسطة PHPStorm. هل يجب أن أقوم بتحويله إلى واجهة معينة أو any من أجل التخلص من خطأ TypeScript؟

الإجابة رقم 1

يجب أن يكون حدثك MessageEvent، وليس Event:

self.onmessage = (e:MessageEvent) => {
    if (e.data.schedules)
        // ...
}