await-catcher
v1.1.2
Published
Promise wrapper for easy error handling without try-catch
Downloads
285
Readme
- Therefore, you can utilize the array destructuring feature in ES6 to name the returned value whatever you like.
- The below 3 examples demonstrate some of the data types that awaitCatcher() can handle */
// 1) let data, error; [ data, error ] = await awaitCatcher("I can pass anything to awaitCatcher :)"); console.log(data, error); // "I can pass anything to awaitCatcher", undefined
// 2) // notice we are reusing the same varibleables (data & error) that were declared above [ data, error ] = await awaitCatcher(Promise.reject("I don't need try/catch to handle rejected promises")) console.log(data, error); // undefined, "I don't need try/catch to handle rejected promises"
// 3) // other variable names can be used whenever needed const [ anyVarName_data, anyVarName_error ] = await awaitCatcher( () => Promise.resolve("I can pass functions that return promises") ) console.log(anyVarName_data, anyVarName_error); // "I can pass functions that return promises", undefined
### #4
```js
/**
* #4 - Use awaitCatcherAsync to pass a call-back instead of using await/async
*
* This is useful when you're not in an async function, but you still can use await-catcher
*/
/**
* awaitCatcherAsync is a wrapper for awaitCatcher that accepts a callback instead of aysnc/await
* @param promise
* @param cb
* @param options
*/
awaitCatcherAsync<Array<string>>(
callToGetData(),
(data, error) => this.setState({updateScreenData: data}),
options
);
Options
type options = {
getByKeys?: String[]; // get key/values from object
getByKeysAndInvoke?: String[]; // get key/values from object and invoke functions
}
🙏 Thanks to
Evan Bacon, a great "markdown developer". (I stole this readme layout from him! 😁)