Угловые события с несколькими методами - PullRequest
0 голосов
/ 19 февраля 2019

Работает над пользовательским компонентом ввода с ControlValueAccessor и не может найти руководство по наилучшему способу доступа к значению ввода.Поскольку передача $ event является сомнительной практикой есть ли способ вызвать два или более метода при возникновении события?

<input type='text' (input)="onChange($event.target.value); watchCity($event.target.value)" [disabled]="disabled" (onEnter)="onEnter($event)" (blur)="onTouched()"  />

Может быть, есть лучший способ получить значение извнутри компонента ControlValueAccessor?

1 Ответ

0 голосов
/ 19 февраля 2019

Синтаксис, который у вас есть, должен работать, но он не очень распространен.

Вы можете вызвать одну функцию, которая вызывает обе другие.

HTML

<input type='text' 
       (input)="onChange($event.target.value)" 
       [disabled]="disabled" 
       (onEnter)="onEnter($event.target.value)" 
       (blur)="onTouched()"  />

Компонент

  onChange(value) {
    // do whatever else
    this.watchCity(value);
  }

Stackblitz здесь: https://stackblitz.com/edit/angular-9wqhjp

Также, смотрите здесь: https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement Я неНе видите событие onEnter для элемента ввода?

И вы упомянули что-то о ControlValueAccessor.Вы пытаетесь построить один?Если это так, проверьте это: https://alligator.io/angular/custom-form-control/ для примера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...