Как предотвратить вызов метода focus out, если пользователь фокусируется вне поля (shift tab)

#angular #typescript #shift #focusout

Вопрос:

Когда вызывается вкладка пользователя из определенной полевой службы .

 <input type="text" matInput [formControl]="order" shifttab-directive (focusout)="orderDataMapping()">
 

Но сервисный вызов не должен произойти, если фокусировка произошла из-за SHIFT TAB . Я добавил ведущего слушателя, как показано ниже

  @Directive({
  selector: '[shifttab-directive]'
})
export class ShiftTabDirective {
   @HostListener('keydown.shift.tab', ['$event'])
      onKeyDown(e) {
     e.preventDefault();
   
     }
    }      
  
 

Но это препятствует перемещению фокуса на предыдущий элемент . Можно ли ограничить только вызов службы на вкладке Shift , но все равно фокус должен переместиться на предыдущий элемент.