Ich habe ein Versprechen Kette:Wie vermeidet man wiederholten Code in der Versprechenskette?
Promise
.then(function() {
if (some condition) {
Promise.reject("Request cancelled");
}
return doSomething1();
})
.then(function() {
if (some condition) {
Promise.reject("Request cancelled");
}
return doSomething2();
})
.then(function() {
if (some condition) {
Promise.reject("Request cancelled");
}
return doSomething3();
})
.catch(function(err) {
if (err == "Request cancelled") {
// err handling here
}
})
In jedem .then(), gibt es gleiche Stück Code zu überprüfen, ob das Versprechen Kette zu brechen:
// repeated code
if (some condition) {
Promise.reject("Request cancelled");
}
Ich muss dies tun, weil ich will, Halte den Rest der Async-Aufrufe sofort auf, sobald ich den Fehler bemerkt habe, damit die App Speicher und Zeit sparen kann. Aber es sieht wirklich chaotisch und überflüssig aus.
Meine Frage ist also: Gibt es eine Möglichkeit, diesen Code zu schreiben und wiederholten Code zu vermeiden?
Vielen Dank!
Vielen Dank! :) Ich werde sie ausprobieren – Max
@Max - wenn dies Ihre Frage beantwortet, können Sie dies der Gemeinschaft anzeigen, indem Sie auf das Häkchen auf der linken Seite der Antwort klicken. Dadurch erhalten Sie auch einige Reputationspunkte für das richtige Vorgehen. – jfriend00