كيفية إضافة خاصية جديدة بشكل صريح إلى الكائن العام `window` في TypeScript؟
مرحبًا بالجميع! أكتب بلغة TypeScript مؤخرًا، واجهت مشكلة. أحتاج إلى حفظ بعض البيانات العامة في `window` لتكون متاحة من وحدات مختلفة. على سبيل المثال، أريد إضافة `myAppConfig` الخاص بي:
```typescript
window.myAppConfig = {
apiUrl: 'https://api.example.com',
debugMode: true
};
```
لكن TypeScript يعطي خطأ:
```
Property 'myAppConfig' does not exist on type 'Window & typeof globalThis'.
```
أفهم أن TypeScript يعرف البنية القياسية لـ `window` ويعترض على الخاصية غير الموجودة. كيف يمكنني تعريف الخاصية الجديدة بشكل صحيح؟ قرأت عن توسيع الواجهات (interfaces) لكنني لم أفهم تمامًا. من فضلك، أخبرني بأبسط وأصح طريقة. شكرًا مقدمًا!
<<>>
التوسيع الصحيح لواجهة Window
المشكلة هي أن TypeScript لديه تصنيف صارم للكائن العام window. لإضافة خاصيتك الخاصة، تحتاج إلى توسيع الواجهة الحالية Window باستخدام