In meiner Angular App gibt es eine Seite von "Listings". Da es Hunderte von Auflistungen gibt, werden die Ergebnisse nur jeweils 20 geladen und weitere werden geladen, wenn der Benutzer nach unten scrollt und auf More klickt.Wie wird die asynchrone Typahead-Suche richtig implementiert?
Ich möchte ein Suchfeld oberhalb der Einträge platzieren, die einen spezifischeren Suchbegriff an den Server senden könnten, um nur übereinstimmende Einträge zurückzugeben.
Zum Beispiel, wenn der Benutzer „myterm“ in das Suchfeld eingibt, Angular sollten nur die Ergebnisse auf der „Anzeigen“ Seite ein GET
-https://myapp.com/listings/?search=myterm
und Anzeige senden.
Ich bin mir nicht sicher, was der richtige Weg, dies in Angular 2+ zu tun ist. In AngularJS hätte ich einfach eine neue Anfrage ausgelöst, die jedes Mal ein Versprechen zurückgibt Suche wurde gedrückt, aber ich vermute, Angular2 + hat einen anderen Ansatz. Ich kann einfach keine Literatur darüber finden.
Bisher habe ich mich sehr über den anfänglichen Funktionsaufruf in der Komponente, die den Dienst mit einem leeren Suchparameter nennt (auch bekannt als, alles bekommen)
ngOnInit() {
this.listings = this.listingService.getListings('');
}
Vielen Dank für die Antwort. Können Sie mir sagen, wie bekomme ich den Wert der Funktion "getListings" in die Eigenschaft "Listings", so dass es auf der Seite angezeigt werden kann. Beachten Sie, dass 'getListings' den Server aufruft und somit auch ein Observable zurückgibt. – CodyBugstein
Und wie präsentiere ich dieses Formular in der Ansicht? – CodyBugstein
Ich habe meine Antwort bearbeitet. Ich nahm an, dass du mit diesen Konzepten vertraut warst, also mein Schlechter. Wie auch immer, ich schlage vor, dass Sie die Dokumente lesen, um besser zu verstehen, was vor sich geht und damit Sie auch alles richtig importieren. – Christian