es7-test.js~HEAD 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. /**
  2. * Created by fy on 15-10-5.
  3. */
  4. 'use strict';
  5. function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  6. require('babel/polyfill');
  7. var _fs = require('fs');
  8. var _fs2 = _interopRequireDefault(_fs);
  9. var _prominence = require('prominence');
  10. var _prominence2 = _interopRequireDefault(_prominence);
  11. function sleep(timeout) {
  12. return regeneratorRuntime.async(function sleep$(context$1$0) {
  13. while (1) switch (context$1$0.prev = context$1$0.next) {
  14. case 0:
  15. return context$1$0.abrupt('return', new Promise(function (resolve, reject) {
  16. setTimeout(function () {
  17. resolve();
  18. }, timeout);
  19. }));
  20. case 1:
  21. case 'end':
  22. return context$1$0.stop();
  23. }
  24. }, null, this);
  25. }
  26. (function callee$0$0() {
  27. return regeneratorRuntime.async(function callee$0$0$(context$1$0) {
  28. while (1) switch (context$1$0.prev = context$1$0.next) {
  29. case 0:
  30. console.log('Do some thing, ' + new Date());
  31. context$1$0.next = 3;
  32. return regeneratorRuntime.awrap(sleep(1000));
  33. case 3:
  34. console.log('Do other things, ' + new Date());
  35. case 4:
  36. case 'end':
  37. return context$1$0.stop();
  38. }
  39. }, null, this);
  40. })();
  41. var filepath = '/home/fy/workspaces/laotang/laotang_zsy_sb_manage/PROCESS_ID';
  42. // use Prominence Proxy
  43. var text = (0, _prominence2['default'])(_fs2['default']).readFile(filepath, 'utf-8')['catch'](console.error.bind(console));
  44. console.log(text);
  45. // not use a proxy
  46. (0, _prominence2['default'])(_fs2['default'], 'readFile', [filepath, 'utf-8']).then(function (text) {
  47. console.log(text);
  48. })['catch'](console.error.bind(console));
  49. var XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest;
  50. var fetchDoubanApi = function fetchDoubanApi() {
  51. return new Promise(function (resolve, reject) {
  52. var xhr = new XMLHttpRequest();
  53. xhr.onreadystatechange = function () {
  54. if (xhr.readyState === 4) {
  55. if (xhr.status >= 200 && xhr.status < 300) {
  56. var response;
  57. try {
  58. response = JSON.parse(xhr.responseText);
  59. } catch (e) {
  60. reject(e);
  61. }
  62. if (response) {
  63. resolve(response, xhr.status, xhr);
  64. }
  65. } else {
  66. reject(xhr);
  67. }
  68. }
  69. };
  70. xhr.open('GET', 'https://api.douban.com/v2/user/aisk', true);
  71. xhr.setRequestHeader('Content-Type', 'text/plain');
  72. var data = null;
  73. xhr.send(data);
  74. });
  75. };
  76. (function callee$0$0() {
  77. var result;
  78. return regeneratorRuntime.async(function callee$0$0$(context$1$0) {
  79. while (1) switch (context$1$0.prev = context$1$0.next) {
  80. case 0:
  81. context$1$0.prev = 0;
  82. context$1$0.next = 3;
  83. return regeneratorRuntime.awrap(fetchDoubanApi());
  84. case 3:
  85. result = context$1$0.sent;
  86. console.log('---------------------------------->>\n', result);
  87. context$1$0.next = 10;
  88. break;
  89. case 7:
  90. context$1$0.prev = 7;
  91. context$1$0.t0 = context$1$0['catch'](0);
  92. console.log(context$1$0.t0);
  93. case 10:
  94. case 'end':
  95. return context$1$0.stop();
  96. }
  97. }, null, this, [[0, 7]]);
  98. })();