Опитвам се да накарам този код да изпълни console.logs в ред (test1, test2, test3). Сега е тест1, тест3, тест2. Очаквах, че вторият then() ще изчака функцията resolve(), преди да започне, но не работи :)
var bluebird = require('bluebird');
var promise = bluebird.resolve(true);
promise.then(function() {
return new bluebird(function(resolve, reject) {
console.log("test1");
setTimeout(function() {
console.log("test2");
resolve();
}, 3000);
});
});
promise.then(function() {
console.log("test3");
});
promise.then(…).then(…)
- не извиквайте вторияthen()
на самияpromise
отново, а по-скоро на върнатата стойност на първия. - person Bergi   schedule 13.11.2015