Wie durchlaufe ich ein Array von JavaScript-Objekten, um für jedes Objekt einen asynchronen Aufruf einer Datenbank durchJavaScript

Javascript-Forum
Anonymous
 Wie durchlaufe ich ein Array von JavaScript-Objekten, um für jedes Objekt einen asynchronen Aufruf einer Datenbank durch

Post by Anonymous »

Ich versuche, Tag-Daten für jeden Blog-Beitrag abzurufen, den ich aus der Datenbank abrufe. Dazu muss ich zunächst einen asynchronen Aufruf an die Datenbank durchführen, um die Blog-Post-Daten abzurufen, die die IDs der Tags enthalten, die jeweils mit den Posts verknüpft sind. Dann muss ich dieses Array von Beiträgen durchlaufen und einen zweiten asynchronen Aufruf an die Datenbank durchführen, um die Tag-Objekte abzurufen, die den jeweiligen Tag-IDs für jeden Beitrag zugeordnet sind.
Das ist mein Code:

Code: Select all

    const result: DB_PostModel[] = await queryDatabase({ query, values });
const posts = result.map(async (post) => ({
...post,
tags: await getTags(post.tags),
}))
Der erste Aufruf funktioniert einwandfrei. Das Endergebnis ist jedoch ein Array ungelöster Promises.
Das posts-Objekt sieht nach der .map()-Operation folgendermaßen aus:

Code: Select all

const posts: Promise[]
Ich kann dieses Array von Post-Objekten nicht auflösen. Ich weiß nicht einmal, ob getPosts() einen erfolgreichen Aufruf durchführt, da ich mit Posts nichts anfangen kann, da ich die Promises nicht auflösen kann.
Wie löse ich die Promises auf?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post