J'ai cette fonction: Si la réponse dispose de plus de 500 résultats, il suffit d'obtenir les 500 meilleurs résultats. Comment puis-je faire ça? P> P>
3 Réponses :
Essayez ceci:
getAllBooks(): Observable<Book[]> { return this.http.get<Book[]>(url).pipe( map((books: Book[]) => { if (books.length > 500) { return books.slice(0, 500); } return books; }) ); }
J'ai vérifié, c'est tranche code>, pas
épissure code>
épissure code> modifiera simplement le tableau d'origine, alors que
SLICE code> ne sera pas, donc oui,
tranche code> serait une meilleure option ici.
épissure du tableau dans le composant:
Utilisez https://angular.io/api/common/slicepipe
À mon avis, la meilleure réponse, dans le contexte de l'angulaire.
Honnêtement, pour cela, si j'avais le contrôle, j'essaierais de le gérer sur le serveur. Pas besoin de transporter des données en arrière et d'autre que vous n'avez pas besoin.
@Jeffryhouser Ouais, j'ai essayé, mais le programmeur côté serveur me donne simplement ces données, je dois le traiter moi-même