javascript-tutorial / javascript-tutorial/en.javascript.info
Promise basics loading indicator example
Ninguém assumiu esta issue ainda.
- Linguagem predominante
- HTML
- Estrelas
- 25.5k
- Forks
- 4k
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
So I was wrapping my head around why would the loading indicator stay active if the promise was settled? The solution did not clarify everything for me, the best explanation I found is:
new Promise((resolve, reject) => {
/* do something that takes time, and then call resolve or maybe reject */
const loading = document.createElement('img');
loading.src="https://media3.giphy.com/media/3oEjI6SIIHBdRxXI40/giphy.gif?cid=ecf05e471sfq2igav6mmdj3cvn1mr4j6br7k3tmo4jvg5t5u&rid=giphy.gif&ct=g";
document.body.append(loading);
})
*!*
// runs when the promise is settled, doesn't matter successfully or not
doSomething().finally(() => loading.remove());
// so the loading indicator is always stopped before we go on
*/!*
.then(result => show result, err => show error)
Could something like this improve the example?
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Direção de pesquisa
Comece localizando o exemplo do indicador de carregamento de Promise basics discutido na issue e revise como ele explica as Promises concluídas. Compare o exemplo com a limpeza proposta baseada em finally; em seguida, atualize o tutorial se isso tornar o comportamento mais claro e verifique se a explicação abrange tanto as Promises resolvidas com sucesso quanto as rejeitadas.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- javascript
- Domínio
- documentation
- Tipo de issue
- Documentação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 45/100