项目作者: invertase

项目描述 :
Async await to Array -> `const [error, value] = await A2A(fooPromise());`
高级语言: JavaScript
项目地址: git://github.com/invertase/a2a.git
创建时间: 2018-09-09T19:41:42Z
项目社区:https://github.com/invertase/a2a

开源协议:Other

下载


A2A - Async Await to Array

NPM downloads
NPM version
License

Simplify your promise workflow.

Install

  1. npm install --save a2a

Example

  1. const A2A = require('a2a');
  2. const axios = require('axios');
  3. async function example1() {
  4. const [ error, users ] = await A2A(axios.get('https://api.com/users'));
  5. if (error) {
  6. // ... do something
  7. }
  8. console.log('Users', users);
  9. }
  10. async function example2() {
  11. const [ error, [ users, profile ] ] = await A2A([
  12. axios.get('https://api.com/users'),
  13. axios.get('https://api.com/profile'),
  14. ]);
  15. if (error) {
  16. // ... do something
  17. }
  18. console.log('Users', users);
  19. console.log('Profile', profile);
  20. }
  21. example1();
  22. example2();

TypeScript

  1. import a2a from 'a2a';
  2. a2a(Promise.resolve(123)) // => Promise<[any, number]>
  3. .then(([error, result]) => {
  4. console.log(result as number);
  5. });
  6. // => Promise<[any, number|string]>
  7. a2a<number|string>(Promise.resolve('123'));
  8. // => Promise<[any, Array<number|string>]>
  9. a2a<number|string>([Promise.resolve('123')]);
  10. // => Promise<[Error, number|string>>
  11. a2a<number|string, Error>(Promise.resolve('123'));