Dies ist wahrscheinlich eine dumme Frage, aber in der Mitte der Versprechenskette, wie lehnen Sie ein Versprechen innerhalb einer der damaligen Funktionen ab? Beispielsweise:
someActionThatReturnsAPromise()
.then(function(resource) {
return modifyResource(resource)
})
.then(function(modifiedResource) {
if (!isValid(modifiedResource)) {
var validationError = getValidationError(modifiedResource);
// fail promise with validationError
}
})
.catch(function() {
// oh noes
});
Es gibt keinen Verweis mehr auf die ursprüngliche Auflösungs- / Ablehnungsfunktion oder den PromiseResolver. Soll ich nur hinzufügen return Promise.reject(validationError);
?
throw validationError