Detect Input Focus Using Angular 2+
Solution 1:
There are focus
and blur
events:
<input (blur)="onBlur()" (focus)="onFocus()">
Solution 2:
For those using @angular/material
, you can get a reference to the MatInput
instance which implements MatFormFieldControl
interface exposing a nice focused
property.
<mat-form-field>
<input matInput #searchInput="matInput" type="text" />
<mat-icon matPrefix svgIcon="filter" [color]="searchInput.focused ? 'primary' : ''"></mat-icon>
</mat-form-field>