Quando concateno più promesse, mi aspetto che ogni promessa venga eseguita solo dopo che è terminata la precedente. In qualche modo non è successo. Sono sicuro che con promesse di sbagliato, e mi piacerebbe qualche spiegazione ...Promesse in nodoJS/una richiamata all'interno di una promessa/ordine di esecuzioni non è corretta
ho questo codice:
var Promise = require('bluebird');
func('A')
.then(() => {func('B')})
.then(() => {func('C')})
.then(() => {func('D')})
function func(arg) {
return new Promise(function(resolve){
console.log('>> ' + arg);
setTimeout(function(){
console.log(' << ' + arg);
resolve();
}, 200)
})
}
mi aspettavo di ottenere questo output:
>> A
<< A
>> B
<< B
>> C
<< C
>> D
<< D
Ma invece Ottengo questo risultato:
>> A
<< A
>> B
>> C
>> D
<< B
<< C
<< D
Cosa mi sto sbagliando?
Grazie uomo molto! –