Como verificar se uma promessa está pendente [duplicado]
Esta pergunta já tem um ans, estava aqui:
Como posso determinar de forma síncrona o estado de uma promessa do JavaScript? 18 respostasEu tenho essa situação em que gostaria de saber qual é o status de uma promessa. Abaixo, a funçãostart
apenas chamasomeTest
se não estiver mais em execução (a promessa não está pendente). ostart
A função pode ser chamada várias vezes, mas se for chamada enquanto os testes ainda estiverem em execução, ela não esperará e retornará apenasfalse
class RunTest {
start() {
retVal = false;
if (!this.promise) {
this.promise = this.someTest();
retVal = true;
}
if ( /* if promise is resolved/rejected or not pending */ ) {
this.promise = this.someTest();
retVal = true;
}
return retVal;
}
someTest() {
return new Promise((resolve, reject) => {
// some tests go inhere
});
}
}
Não consigo encontrar uma maneira de simplesmente verificar o status de uma promessa. Algo comothis.promise.isPending
seria bom :) Qualquer ajuda seria apreciada!