Ich habe eine Funktion (sendemail), wie Sie hier sehen:Wie wird eine Promise-Funktion in der For-Schleife zurückgegeben?
public async sendEmail (log: LogMessage): Promise<void> {
nodemailer.createTestAccount(async() => {
return ServiceFactory.getSystemService().getNetworkPreferences().then(async (networkPreferences) => {
....
ich es in einer for-Schleife verwenden möchten:
for (const log of logs) {
const timestamp = moment(log.creationDate)
const startTime = new Date(Date.now())
if ((timestamp.diff(startTime)) >= rule.miliSecond && category.includes(log.category)) {
return this.sendEmail(log)
}
}
ich nicht löschen kann "return this.sendEmail (log)" , weil die Funktion Promise zurückgibt. Aber die Schleife funktioniert nur einmal und mit dem ersten Protokoll würde es beendet werden. Wie kann ich die Funktion in dieser Schleife verwenden?
https://stackoverflow.com/questions/43258568/for-await-of- simple-example-typescript –
Ich bin mir ziemlich sicher, dass du ein Versprechen für 'nodemailer.createTestAccount' abgeben solltest und' erwarte' das. Übergeben Sie keine Async-Funktion als Callback. – Bergi