خطأ Angular @ViewChild: متوقع وسيطان لكن تم استلام واحد — كيف أصلحه؟
مرحبًا! أنا أنتقل من Angular 7 إلى Angular 9 وواجهت خطأ غير مفهوم. كنت أستخدم `@ViewChild()` بهذه الطريقة:
```typescript
@ViewChild('myDiv') myDiv: ElementRef;
```
لكن الآن المترجم TypeScript يعطي خطأ:
```
Expected 2 arguments, but got 1.
```
قرأت أنه في Angular 8+ تم تغيير توقيع `@ViewChild`. جربت إضافة `{ static: false }` — اختفى الخطأ. لكنني لا أفهم تمامًا ما يعنيه هذا. متى يجب استخدام `static: true` ومتى `static: false`؟
على سبيل المثال، لدي قالب بعنصر ``، وأريد الوصول إليه في `ngAfterViewInit()`. أيضًا هناك directive ` `، أصل إليها في `ngOnInit()`.
أرجو توضيح كيفية استخدام `@ViewChild` بشكل صحيح في الإصدارات الجديدة من Angular. لماذا يجب تحديد الوسيط الثاني؟ وماذا سيحدث إذا وضعت `static: true` في كل مكان؟
شكرًا!
<<>>