-
-
Save bitfishxyz/a27559bef04266f946cd50837fa19e31 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function asyncToGenerator(generatorFunc) { | |
return function() { | |
const gen = generatorFunc.apply(this, arguments) | |
return new Promise((resolve, reject) => { | |
function step(key, arg) { | |
let generatorResult | |
try { | |
generatorResult = gen[key](arg) | |
} catch (error) { | |
return reject(error) | |
} | |
const { value, done } = generatorResult | |
if (done) { | |
return resolve(value) | |
} else { | |
return Promise.resolve(value).then(val => step('next', val), err => step('throw', err)) | |
} | |
} | |
step("next") | |
}) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment