Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Criar Promessa

Cria uma promessa que futuramente irá receber um valor Cria um objeto de promessa com o status inicial "pending" (pendente). Após aguardar algum processamento, esse status pode ser alterado para "resolve" (resolvido) quando o fluxo atender as expectativas ou "reject" (rejeitado) quando não atender. O status do objeto é alterado com o uso do bloco Atribuir valor para a promessa.

Retorno

Retorna um valor para o sucesso ou erro se foi resolvido ou rejeitado.

Compatibilidade

Image Removed Cliente

Exemplo


Image Added

Figura 1 - Bloco Criar Promessa


Informações

Para obter o valor da promessa e realizar processamentos assíncronos, utilize também o bloco Monitorar uma promessa.


Compatibilidade

  • Bloco cliente: cronapi.util.createPromise()

Retorno

Objeto de promessa com o status "pending" (pendente).

Parâmetros

Bloco sem parâmetros.

Exemplo 

Na função de exemplo da figura 2, a variável "promessa" é inicializada com o objeto da promessa ainda com o status de "pending". Em seguida, o bloco Obter conteúdo da URL faz uma requisição REST e retorna algum valor. Se a requisição for bem-sucedida, a entrada de comando Sucesso é executada e O exemplo da figura 1 mostra o bloco Criar Promessa atribuindo a promessa à variável promessa, que futuramente receberá um valor de sucesso ou erro com o bloco Atribuir valor para a promessa, ao atribuir o bloco em sucesso, coloque o Tipo como resolve, e ao atribuir ao erro, coloque o campo Tipo como reject, no campo Promessa, coloque a variável "promessa" que criamos anteriormente, e por último colocaremos no campo Valor a variável "item", que é a mesma do retorno do bloco Obter conteúdo da URL ,o bloco Atribuir valor para a promessa funciona somente com blocos que possuem retorno de sucesso e erro, como o bloco Obter conteúdo da URL a utilização completa do exemplo você pode ver aqui.

Image RemovedFigura 1 - Como é utilizado o bloco Atribuir valor para a promessa

altera o status da promessa para "resolve" e inclui o retorno da requisição como Valor dessa promessa. Caso ocorra algum erro durante a requisição, a entrada de comando Erro é executada e o bloco Atribuir valor para a promessa altera o status da promessa para "reject".


Image Added

Figura 2 - Criação do objeto promessa 


Como estamos trabalhando com recursos assíncronos, o bloco Imprime com o texto "Fora da requisição." é executado antes da finalização do bloco Obter conteúdo da URL (figura 2.1).


Image Added

Figura 2.1 - Impressões geradas pela função a Figura 2

Saiba mais

Veja detalhes sobre o conceito de Promessas no JavaScript em Promise.

Nesta página

Índice