1.0.0 • Published 9 years ago
asyncmemo v1.0.0
asyncmemo
Memoize asynchronous function calls. Combine multiple calls with the same argument so that the underlying function is only called once for that argument. Optionally cache the result for that argument.
Install
npm install --save asyncmemoExample
var asyncMemo = require('asyncmemo')
var xhr = require('xhr')
var get = asyncMemo(function (base, path, cb) {
xhr.get(base + path, cb)
}, 'http://localhost')
get('/foo', function (err, resp) {
console.log(err, resp)
})API
asyncMemo([opts,] fn, [args...]): memo
opts.cache: cache object, or false to disable cachefn([args...], arg, cb(err, result)): the asyncronous function to memoizeargs: arguments to prepend to each call tofnmemo(arg, cb(err, result)): memoized asynchronous function
A custom cache object can be passed using the cache option. This should have
has, get, and set methods.
Related
- async-memo
- async-cache
- memo-cache
- memoizeasync
- thunky - does the same except memoizes only one value
License
Copyright (c) 2016 Charles Lehner
Usage of the works is permitted provided that this instrument is retained with the works, so that any entity that uses the works is notified of this instrument.
DISCLAIMER: THE WORKS ARE WITHOUT WARRANTY.