mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
549 B
34 lines
549 B
13 years ago
|
# 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.
|