readily
v1.0.1
Published
Buffer evaluation of a paramless async function call
Downloads
15
Readme
readily
npm install readily
Buffer evaluation of a paramless async function call, where result is cached if resolved. Supports both promise and callback.
Using promise:
var readily = require('readily')
var dbReady = readily(function () {
// will only be called once if no error
return db.open() // returns promise
})
// call dbReady multiple times
for (var i = 0; i < 10; i++) {
dbReady().then(function (res) {
// returns cached result for subsequent calls
return db.query(...)
}).catch(function (err) {
console.error(err)
})
}
Using callback:
var readily = require('readily')
var dbReady = readily(function (callback) {
// will only be called once if no error
db.open(callback)
})
// call dbReady multiple times
for (var i = 0; i < 10; i++) {
dbReady(function (err, res) {
if (err) return console.error(err)
// returns cached result for subsequent calls
db.query(...)
})
}
License
MIT