في Angular 2 والإصدارات الأحدث، يمكنك تحقيق التركيز على عنصر DOM باستخدام التوجيه الشرطي (*ngIf
) مع توجيه autofocus
المدمج. على سبيل المثال، إذا كانت لديك متغير في مكون Angular يحدد متى يجب أن يكون التركيز على العنصر، يمكنك استخدام *ngIf
لتحقيق ذلك.
على سبيل المثال، لنفترض أن لديك متغير يسمى shouldFocus
يحدد متى يجب أن يتم التركيز على العنصر، يمكنك استخدام الشيفرة التالية:
html<input type="text" *ngIf="shouldFocus" autofocus>
في هذا المثال، إذا كان shouldFocus
يقوم بإرجاع قيمة true
، سيتم تحقيق التركيز على العنصر .
تأكد من أن العنصر الذي تريد تحقيق التركيز عليه له خاصية autofocus
، التي تقوم بتحقيق التركيز تلقائيًا عند تحميل الصفحة.
المزيد من المعلومات
بالطبع! في Angular 2، يمكنك أيضًا استخدام التوجيه الشرطي ngIf
بالإضافة إلى التوجيه [attr.autofocus]
لتحقيق التركيز على عنصر DOM بناءً على قيمة متغير في الكود الخاص بك. على سبيل المثال:
html<input type="text" [attr.autofocus]="shouldFocus ? true : null">
في هذا المثال، ستتم إعادة تقييم [attr.autofocus]
عندما تتغير قيمة shouldFocus
. إذا كانت shouldFocus
تقوم بإرجاع قيمة true
، سيتم تحقيق التركيز على العنصر .
من الجدير بالذكر أنه يمكنك أيضًا استخدام متغير في الكود الخاص بك لتحديد متى يجب أن يتم إظهار العنصر وتحقيق التركيز عليه في نفس الوقت، مثل:
typescriptexport class YourComponent {
shouldFocus: boolean = true;
toggleFocus() {
this.shouldFocus = !this.shouldFocus;
}
}
وفي قالب HTML الخاص بك، يمكنك استخدام ngIf
لتحقيق ذلك:
html<input type="text" *ngIf="shouldFocus; else noFocus" [attr.autofocus]="true">
<ng-template #noFocus>
<input type="text">
ng-template>
هذا الكود يعرض حقل الإدخال فقط عندما تكون shouldFocus
صحيحة، ويضع التركيز على العنصر الأول.