Guest User

Untitled

a guest
Jun 18th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.60 KB | None | 0 0
  1. function async(generatorFn) {
  2. return function () {
  3. var iterator = generatorFn.apply(this, arguments);
  4.  
  5. function handle(result) {
  6. if (result.done) return Promise.resolve(result.value);
  7.  
  8. return Promise.resolve(result.value).then(function (res) {
  9. return handle(iterator.next(res));
  10. }, function (err) {
  11. return handle(iterator.throw(err));
  12. });
  13. }
  14.  
  15. try {
  16. return handle(iterator.next());
  17. } catch (ex) {
  18. return Promise.reject(ex);
  19. }
  20. }
  21. }
Add Comment
Please, Sign In to add comment