Bazı durumlarda, bir vaat nesnesinden bir dönüş değeri aldığımda then()
, değerin durumuna bağlı olarak iki farklı öncelik başlatmam gerekir , örneğin:
promise().then(function(value){
if(//true) {
// do something
} else {
// do something
}
})
Düşünüyorum da belki şöyle yazabilirim:
promise().then(function(value){
if(//true) {
// call a new function which will return a new promise object
ifTruePromise().then();
} else {
ifFalsePromise().then();
}
})
ama bununla iki sorum var:
Yeni bir söz başlatmanın iyi bir fikir olduğundan emin değilim - o zaman bir sözle süreci;
ya iki işlemin sonuncusunda bir işlevi çağırmasına ihtiyacım olursa? Aynı "terminal" e sahip oldukları anlamına gelir
Orijinal zinciri korumak için yeni sözümü geri vermeye çalıştım:
promise().then(function(value){
if(//true) {
// call a new function which will return a new promise object
// and return it
return ifTruePromise();
} else {
// do something, no new promise
// hope to stop the then chain
}
}).then(// I can handle the result of ifTruePromise here now);
ama bu durumda, ister doğru ister yanlış olsun, bir sonraki then
işe yarar.
Öyleyse, bunun üstesinden gelmek için en iyi uygulama nedir?