Ich benutze Angular 4.2.2 mit der ES6-Stil. Im Moment bin ich ratlos, wie ich meinen Code dazu bringen kann, eine Funktion auszuführen, wenn der Benutzer die EINGABETASTE drückt, während ein Feld den Fokus hat.Hören Sie, klicken Sie auf <input> Komponente
Im Moment sieht mein HTML so aus.
<div class="box" id="redbox" class="app-flex-item"><!-- flex item -->
<input id="searchTermInput" class="search-input" ng-keydown="runSearch($event)">
</div>
und meine Komponente Controller sieht so aus.
@Component({
...
})
export class AppComponent {
runSearch(ev): void {
console.log("Run Search Invoked");
this.searchResultService.getHeroesSlowly().then(searchResponseResult => {
this.searchResponseResult = searchResponseResult;
this.searchResults = searchResponseResult.searchResults;
this.showDivider = true;
}
)
}
}
Leider, wenn ich die Taste drücken ENTER, sehe ich nicht einmal „Run Search aufgerufen,“ auf der Konsole ausgegeben.
Kann jemand Ereignisse auf einer Eingabekomponente eingeben?
Jede Hilfe wird sehr geschätzt.
Mögliche Duplikat [In angular2 Taste Trigger auf der Seite jeder Klick Ereignis eintritt?] (Https://stackoverflow.com/questions/37936961/in-angular2-tut-enter-key-trigger-any-click-event-on-the-page) – developer033