2017-04-23 2 views
3

Ich habe einen Code ähnlich wie diese:Stopp Versprechen Ketten Ausführung in einer empfohlenen Weise

promise_function().then(()=>{ 
    //do something 
    return another_promise_fucntion(); 
}).then(() => { 
    //do something 
    return another_promise_function1(); 
}).then((result) => { 
    //check if result is valid 
    if(!result) 
    //break chain (how to stop calling the next .then functions ?) 
    else 
    return another_promise_function2(); 
}).then(()=>{ 
    //do something 
    return another_promise_function3(); 
}).catch((err)=>{ 
    //handle error 
}); 

Ich will die nächste .then() Funktionen nicht mehr anrufen, wenn das zurückgegebene Ergebnis ist nicht gültig.

Ich verwendete "neue Error()", und es funktionierte gut, aber ich bin mir nicht sicher, ob es der empfohlene Weg ist.

+0

'throw' ist der richtige Weg. –

+1

Sie können 'Promise.reject' dort verwenden. –

+0

@torazaburo Wäre nicht "ablehnen" ein idealer Weg dies zu tun? Nur fragen. –

Antwort

Verwandte Themen