A simple way of handling async/await responses with array destructuring. The original concept for this package was derived from Promises/A+.
$ yarn add aplus-await
// Instead of writing
let result;
try {
result = await promise();
} catch (error) {
throw new Error(error);
}
console.log(result);
// You can write
const [result, error] = await aplusAwait(promise);
if (error) throw new Error(error);
console.log(result);
When you wrap a promise with aplusAwait
, you are guaranteed to be returned two arguments in the form of an array. The first element is the response of the promise and the second element is any error that occurred while executing the promise.
If you do not care about the error:
const [result] = await aplusAwait(promise);
If you just want the error:
const [,error] = await aplusAwait(promise);
If you do not want to use array destructuring:
const response = await aplusAwait(promise);
// response[0] = result
// response[1] = error
MIT © Henry Kaufman