@byungi/p-await-of

Promise wrapper to return an error like Go.

Usage no npm install needed!

<script type="module">
  import byungiPAwaitOf from 'https://cdn.skypack.dev/@byungi/p-await-of';
</script>

README

@byungi/p-await-of

Promise wrapper to return an error like Go.

Example

Before

async function AsyncJob () {
    let first
    try {
        first = await firstJob()
    } catch (err) {
        return false
    }

    try {
        await secondJob(first)
    } catch (err) {
        return false
    }

    return true
}

After

import of from '@byungi/p-await-of'

async function AsyncJob () {
    const [first, err1] = await of(firstJob())
    if(err1) return false

    const [, err2] = await of(secondJob(first))
    return !err2
}

License

MIT