dedlfix: Programmfluss Node.js (asynchron) regeln

Beitrag lesen

Tach!

ja, aber in dem Array, dass ich übergebe, wäre der zweite Wert vom Ergebnis des ersteren Wertes abhängig und müsste als Parameter übergeben werden.

Die Vorgänge (get_house_cost_type_id und insert_house_cost) als solche sind doch abgeschlossen, oder müssen sie auf irgendwas warten, außer dass du sie startest und der eine auf den anderen? Dann bau ein Promise drumherum, das vom insert_house_cost()-Promise-Resultat erfüllt wird. Diese Promises kannst du dann ins Array packen.

Es hilft da, modular zu denken. Du hast viele Vorgänge, bestehend aus zwei Teilvorgängen. Die sind alle gleich, unterscheiden sich nur durch die zu verarbeitenden Werte. Also kapsel den Vorgang in einem Modul (im allgemeinen Wortsinn, nicht im "import … from …"-Sinne), zum Beispiel in einer Funktion. Oder hier in einem Promise, wegen der Asynchronität. Und nun kannst du diese Vorgänge starten, wie es beliebt. Zum Beispiel nur einen einzigen, oder auch viele in einer Schleife, oder über ein Promise.all()-Array. (Achja, und übergib den eigentlichen Wert, nicht ein ganzes Array plus Index-Nummer.)

dedlfix.