Home

Awesome

storage-emitter

Emit events between browser tabs.

It's a small wrapper around window.onstorage event, which is a part of WebStorage specification and available in IE8+ browsers.

It works like a regular instance of EventEmitter, with the only difference that event is fired in all open tabs for same domain.

Possible applications:

Example

import sEmitter from 'storage-emitter'

// listen to "logout" event

sEmitter.on('logout', () =>
  location.reload()
})

// call "logout" from another tab

sEmitter.emit('logout')

Installation

$ yarn add storage-emitter
$ npm i -S storage-emitter

API

sEmitter.on(event, callback)

Subscribe on event across all open application instances.

sEmitter.emit(event, args)

Emit event with args to all open tabs.

sEmitter.off([event])

Unsubscribe from all events or one specific event.

License

MIT