العودة إلى الدورة

استخدام متغيرات الإشارة المحلية للتفاعل

مطور Angular الشامل: من الصفر إلى الاحتراف

67. استخدام متغيرات الإشارة المحلية للتفاعل

لقد رأينا سابقاً متغيرات الإشارة المحلية (#input) تشير إلى عناصر DOM. يمكن استخدامها أيضاً للإشارة مباشرة إلى مثيلات مكونات الابن ضمن قالب الأب، مما يسمح للأب باستدعاء أساليب عامة على الابن.

السيناريو: الأب يستدعي أسلوب الابن

تخيل أن VideoPlayerComponent (الابن) يحتاج إلى أسلوب play() عام يريد VideoDashboardComponent (الأب) تشغيله عبر زر.

1. تحديد الأسلوب العام في الابن

typescript // video-player.component.ts (الابن) export class VideoPlayerComponent { isPlaying: boolean = false;

play(): void { this.isPlaying = true; console.log('Video playing...'); } }

2. تحديد الإشارة واستدعاء الأسلوب في قالب الأب

يقوم قالب الأب بتعيين متغير إشارة إلى وسم مكون الابن، مما يتيح الوصول إلى مثيل المكون.

html

<app-video-player #player>

<button (click)="player.play()"> Start Video

Video Status: Running

متى تستخدم هذا النمط؟

هذه الطريقة فعالة لاستدعاء إجراءات أمرية بسيطة على الابن (على سبيل المثال، reset()، focus()، open()). لتمرير البيانات أو إدارة الحالة المعقدة، يظل @Input/@Output أو الخدمات هي المفضلة.