Skip to content
This repository was archived by the owner on Jun 3, 2020. It is now read-only.

particle-iot-archived/await-on

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

😪 @particle/await-on

npm node npm npm Travis Coverage

Really simple error handling with await/async

Forked from await-on by Jason Yung, itself inspired by await-to-js whose creator Dima Grossman originally blogged about using destructuring array assignment

Quick Usage

This package provides a helper for destructuring the results of a Promise:

const on = require('@particle/await-on');

const fetchData = () => new Promise(/*...*/);

const [err, data] = await on(fetchData());
if(err) {
	res.send(err);
} else {
	res.send(data);
}

The goal is to avoid the built-in approach using the try/catch block pattern:

try {
	const data = await fetchData();
	res.send(data);
} catch(err) {
	res.send(err);
}

Type fuzziness

Non-promises will passthrough same as the behavior of the native await

const [err, answer] = await on(42); //not a promise but ok no big deal
console.log(answer) //> 42

License

MIT License. See License in the repository.

About

DEPRECATED 💀 - use @particle/async-utils

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%