shrine-medco/shrine-webclient/src/main/html/node_modules/once23de2099ce18release/1.22.2.4
shrine-medco/shrine-webclient/src/main/html/node_modules/once
23de2099ce18release/1.22.2.4
README.md
README.md
once
Only call a function once.
usage
javascript var once = require('once') function load (file, cb) { cb = once(cb) loader.load('file') loader.once('load', cb) loader.once('error', cb) }
Or add to the Function.prototype in a responsible way:
javascript // only has to be done once require('once').proto() function load (file, cb) { cb = cb.once() loader.load('file') loader.once('load', cb) loader.once('error', cb) }
Ironically, the prototype feature makes this module twice as complicated as necessary.
To check whether you function has been called, use fn.called. Once the function is called for the first time the return value of the original function is saved in fn.value and subsequent calls will continue to return this value.
javascript var once = require('once') function load (cb) { cb = once(cb) var stream = createStream() stream.once('data', cb) stream.once('end', function () { if (!cb.called) cb(new Error('not found')) }) }
c4science · Help