async-execution-context
An execution context that persists across async tasks
Example
const { ctx } = require('async-execution-context')
(async () => {
ctx.prop1 = 10
await Promise.resolve().then(() => {
ctx.prop2 = 20
console.log(ctx.prop1)
})
console.log(ctx.prop1)
console.log(ctx.prop2)
})()
Express application:
app.use((req, res) => {
ctx.user = req.user
})
app.get('/pizza', async (req, res) => {
const pizza = await getPizza()
return res.status(200).send(pizza)
})
const { ctx } = require('async-execution-context')
async function getPizza() {
const pizza = await getPizzaFromDB()
console.log(`User ${ctx.user.name} wants a slice of pizza!`)
return pizza
}