Wenn Sie eine asynchrone Funktion erstellen, wird implizit immer eine Promise zurückgegeben.Typescript Async Rückgabe-/Wurffehler
Erstens, wenn eine async
Funktion ist es tatsächlich ein Unterschied zwischen
Promise.reject(new Error(...))
Rückkehr vs throw new Error(...)
Sollten Sie einen über die andere verwenden aus anderen Gründen als die Konsistenz in der Code-Basis?
Zweitens, welchen Typ gibt es zurück?
Basiert auf VS Code Promise.reject(new Error(...))
gibt Promise<Never>
zurück throw new Error(...)
die gleiche Sache zurück?
Drittens, sollten Sie die Funktionstyp-Signatur in "Verspre- chen" ändern, wenn sie eine abgelehnte Versprechung zurückgeben kann? Gibt es einen abgelehnten Promise-Typ? Macht das überhaupt Sinn?
Danke.
Bitte nur eine Frage stellen per Post – Bergi
1) [sie die gleiche Sache sind] (https://StackOverflow.com/q/33445415/1048572) 2) 'throw' hat wahrscheinlich einen' void' Typ, aber es hat vielleicht überhaupt keinen, weil es eine Aussage ist, kein Ausdruck - das gleiche gilt für ' Rückkehr "3) Ja, es macht Sinn, aber TypeScript hat es nicht getan, weil sie dachten, es wäre zu kompliziert. – Bergi
Siehe https://github.com/Microsoft/TypeScript/issues/7588 https://github.com/Microsoft/TypeScript/issues/6283 https://stackoverflow.com/questions/39381940/typescript-type-definition-for-price-reject – Bergi