Skip to content
NodeJS mixin to add one-time ready event
Branch: master
Clone or download
Pull request Compare This branch is 12 commits ahead of supershabam:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
test
.autod.conf.js
.eslintignore
.eslintrc
.gitignore
.travis.yml
History.md
LICENSE
README.md
appveyor.yml
index.js
package.json

README.md

get-ready

=====

NPM version build status Test coverage David deps npm download

Fork from supershabam/ready

NodeJS mixin to add one-time ready event

Usage

Using ready or ready.mixin to add ready method to the given object.

const ready = require('get-ready');
const obj = {};
ready.mixin(obj);

// register a callback
obj.ready(() => console.log('ready'));

// mark ready
obj.ready(true);

Register

Register a callback to the callback stack, it will be called when mark as ready, see example above.

If the callback is undefined, register will return a promise.

obj.ready().then(() => console.log('ready'));
obj.ready(true);

If it has been ready, the callback will be called immediately.

// already ready
obj.ready(true);
obj.ready().then(() => console.log('ready'));

Warning: the callback is called after nextTick

Emit

Mark it as ready, you can simply using .ready(true).

You can also mark it not ready.

obj.ready(true);
// call immediately
obj.ready(() => console.log('ready'));

obj.ready(false);
obj.ready(() => throw 'don\'t run');

When exception throws, you can pass an error object, then the callback will receive it as the first argument.

obj.ready(err => console.log(err));
obj.ready(new Error('err'));

License

MIT

You can’t perform that action at this time.