Bluebird sandbox
by tanvir_alam_shawn
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/bluebird/3.0.5/bluebird.js"></script>
JavaScript
const Bluebird = Promise.noConflict()
let merchant = {};
let customer = {};
let payment = {};
let MerchantPromise = function () {
return new Promise(function (resolve, reject) {
setTimeout(function () {
console.log(MerchantPromise.name);
merchant = {name: "EBANX"};
resolve();
}, 1000)
})
};
var CustomerPromise = function () {
return new Promise(function (resolve, reject) {
setTimeout(function () {
console.log(CustomerPromise.name);
customer = {name: "Cristopher"};
resolve();
}, 50)
})
};
var PaymentPromise = function () {
return new Promise(function (resolve, reject) {
setTimeout(function () {
console.log(PaymentPromise.name);
payment = {type: "visa"};
resolve();
}, 50)
})
};
Bluebird.map([MerchantPromise, CustomerPromise, PaymentPromise], function (promiseFn) {
return promiseFn();
}, {concurrency: 1})
.then(function() {
console.log(merchant, customer, payment);
});