Skip to content

Instantly share code, notes, and snippets.

@gskachkov
Last active March 6, 2017 19:50
Show Gist options
  • Save gskachkov/f48a152f9c05524a791069703c40dba6 to your computer and use it in GitHub Desktop.
Save gskachkov/f48a152f9c05524a791069703c40dba6 to your computer and use it in GitHub Desktop.
Example of chain of promises
var getPromise = (value, delay) => {
return new Promise(resolve => {
setTimeout(() => resolve(value), delay);
});
};
var promise = getPromise('start value', 150);
promise
.then(result => {
var value = 'step - 1 after ' + result;
return getPromise(value, 50);
})
.then(result => {
var value = 'step - 2 after ' + result;
return getPromise(value, 100);
})
.then(result => {
var value = 'step - 3 after ' + result;
return getPromise(value, 150);
})
.then(result => {
console.log('end result:', result);
});
// Will be printed: 'end result: step - 3 after step - 2 after step - 1 after start value' after some delay
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment