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 promessaaltera 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 |
---|