Melhorando suas promessas no JavaScript
Andre Baltieri
164

Só dando mais alguns toques, pois ainda existe alguns problemas no uso das Promises. Segue exemplo reduzido:

main();

function main() {
funcaoUm()
.then(() => funcaoDois());
}

function funcaoUm() {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log('1');
resolve();
}, 1234);
});
}

function funcaoDois() {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log('2');
resolve();
}, 100);
});
}

Um dos problemas foi não utilizar as funções resolve e reject da Promise. E outro problema foi não chamar as Promises seguintes dentro de uma função, o que fez com que elas fossem executadas paralelamente, ao invés de sequencialmente, como o esperado.

É importante entender esses pontos, pois parte da base do async/await do Node são as Promises em si (você pode fazer um await de um método que retorna uma Promise).

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.