Atribuir valor para a promessa / Handle value to promise

Atribuir valor para a promessa / Handle value to promise

Altera o status do objeto da promessa (criado a partir do bloco Criar Promessa) para "resolve" (resolvido) quando o fluxo atendeu as expectativas ou "reject" (rejeitado) quando não atendeu. 

 

Figura 1 - Bloco Atribuir valor para a promessa

Para obter o valor da promessa, utilize o bloco Monitorar uma promessa.

Compatibilidade

  • Bloco cliente: cronapi.util.handleValueToPromise()

Retorno

Bloco sem retorno.

Parâmetros

Tipo

Define o status do objeto da promessa de "pending" (pendente) para uma das opções selecionadas.

  • Posição: 1

  • Inglês: Type

  • Tipo: Texto / String

  • Exemplo: "resolve"

  • Opções:

    • resolve: altera o status para resolvido.

    • reject: altera o status para rejeitado.

Promessa

Recebe o objeto da promessa, criado a partir do bloco Criar Promessa.

  • Posição: 2

  • Inglês: Promise

  • Tipo: Objeto / Object

  • Exemplo: bloco Criar Promessa

Valor

Inclui no objeto o conteúdo de retorno da promessa. Utilize o bloco Monitorar uma promessa para obter esse valor dentro do objeto.

  • Posição: 3

  • Inglês: Value

  • Tipo: Objeto / Object

  • Exemplo: retorno de alguma requisição REST.

Exemplo

Na função da figura abaixo estamos criando e monitorando uma promessa até que a requisição REST seja concluída e o bloco Atribuir valor para a promessa altere o status da promessa de "pending" para "resolve" ou "reject".

Figura 2 - Exemplo de uso do bloco Atribuir valor para a promessa
  1. A variável "promessa" recebe o objeto da promessa criado a partir do bloco Criar Promessa.  Nesse momento o objeto da promessa está com o status definido como "pending" (pendente).

  2. O bloco Monitorar uma Promessa ficará "ouvindo" a promessa até que ela mude seu status. O conteúdo da entrada de comando Sucesso será executado quando o status da promessa mudar para "resolve", caso mude para "reject", será executado a entrada de comando Erro

  3. É feito uma requisição REST que executará uma das entradas de comando com base no sucesso ou erro dessa requisição.

    1. Sucesso: o bloco Atribuir valor para a promessa define no parâmetro Tipo que a promessa foi resolvida e no parâmetro Valor informa o retorno da requisição REST.

    2. Erro: o bloco Atribuir valor para a promessa define no parâmetro Tipo que a promessa foi rejeitada e no parâmetro Valor informa uma mensagem de erro.

Ao executar a função da figura 2 com uma requisição REST bem sucedida, o bloco Atribuir valor para a promessa definirá o status da promessa para "resolve". Em seguida, o bloco Monitorar uma promessa (destaque 2 da figura 2) imprimirá no console do navegador o texto com o retorno da requisição (figura 2.1). 

Figura 2.1 - Resultado com sucesso da execução da função da figura 2

Caso ocorra uma falha na requisição REST, o bloco Atribuir valor para a promessa definirá o status da promessa para "reject". Em seguida, o bloco Monitorar uma promessa (destaque 2 da figura 2) imprimirá no console do navegador (1 da figura 2.2) o texto informado no parâmetro Valor (destaque b da figura 2).

Figura 2.2 - Resultado com falha da execução da função da figura 2

Saiba mais

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