unload
Execute code when the js-process exits. On all javascript-environments
Last updated 3 years ago by pubkey .
Apache-2.0 · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install unload 
SYNC missed versions from official npm registry.

javascript: unload

Run a piece of code whenever the javascript process stops/exits/quits. On browsers, nodejs, electron, react-native, workers, iframes. It also ensures that the exit-function is called only once.

You should use this module when your write a npm library where you dont know in which environments the users will run it.

What does unload handle?

When nodejs:

process.on('beforeExit');
process.on('exit');
process.on('SIGINT'); // catches ctrl+c event
process.on('uncaughtException'); // catches uncaught exceptions

When browser:

window.addEventListener('beforeunload'); // closing of normal browser-window
window.addEventListener('unload'); // closed inside of iframe

Usage

Installation:

npm install unload --save

Add a function which runs when the process exits:

var unload = require('unload');
unload.add(function(){
    console.log('Ouch, I\'m dying.');
});

Add and remove the function (It will no longer run when the process exits):

var unload = require('unload');
var ret = unload.add(function(){
    console.log('Ouch, I\'m dying.');
});

ret.remove(); // removes the event-handler

Run all previously added functions:

var unload = require('unload');
unload.add(function(){
    console.log('Ouch, I\'m dying.');
});

unload.runAll();

Remove all added functions (They will no longer run when the process exits):

var unload = require('unload');
unload.add(function(){
    console.log('Ouch, I\'m dying.');
});

unload.removeAll();

Sponsored by

Sponsored by RxDB

The JavaScript Database

Current Tags

  • 2.4.1                                ...           latest (3 years ago)

17 Versions

  • 2.4.1                                ...           3 years ago
  • 2.4.0                                ...           3 years ago
  • 2.3.1                                ...           4 years ago
  • 2.3.0                                ...           4 years ago
  • 2.2.0                                ...           7 years ago
  • 2.1.1                                ...           7 years ago
  • 2.1.0                                ...           7 years ago
  • 2.0.2                                ...           8 years ago
  • 2.0.1                                ...           8 years ago
  • 2.0.0                                ...           8 years ago
  • 1.3.9                                ...           8 years ago
  • 1.3.8                                ...           8 years ago
  • 1.3.7                                ...           8 years ago
  • 1.3.6                                ...           8 years ago
  • 1.3.5                                ...           9 years ago
  • 1.3.4                                ...           9 years ago
  • 0.0.1                                ...           9 years ago
Maintainers (1)
Downloads
Today 0
This Week 2
This Month 18
Last Day 0
Last Week 17
Last Month 1
Dependencies (0)
None
Dependents (1)

Copyright 2013 - present © cnpmjs.org | Home |