Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

achain

weirongxu9MIT1.1.4TypeScript support: included

asynchronous chain function

async, await, achain, chain

readme

AChain

NPM version NPM downloads Build Status

asynchronous chain function based on Proxy

Usage

npm

npm i achain

or yarn

yarn add achain
const achain = require('achain')

let attr = await achain(promise).attr.asyncFunc().asyncFunc()().attr

Example

Before

async function main() {
  let user = await getUser(1)
  let userDetail = await user.getDetail()
  await userDetail.destroy()

  let user = await getUser(2)
  let name = user.name
}

After

async function main() {
  await achain(getUser(1)).getDetail().destroy()
  let name = await achain(getUser(2)).name
}

Before

async function main() {
  let res = await fetch('/users.json')
  let data = res.json()
}

After

var api = achain(fetch)
async function main() {
  let data = await api('/users.json').json()
}

License

MIT