newsletter
TypeScript icon, indicating that this package has built-in type declarations

4.0.2 • Public • Published

newsletter

npm install newsletter

Simple pub/sub implementation.

ESM Package

Starting from v4.0 this package fully moved to ES Modules and ES2015 code. This means no more build step before publishing to NPM.

Ideally you shouldn't spot any difference, but in case you face any issues, see this useful article.

You can also downgrade to v3.x to use all the same functionality, precompiled to ES5.

API

To create publisher instance use Newsletter constructor (see Usage). Instance implements next interface:

  • publish - invokes all listeners and pass some received data to them
  • subscribe - adds new listener (function) and returns subscription handling instance

Usage

// get newsletter
import { Newsletter } from "newsletter";

// create instance
var signal = new Newsletter();

// subscribe notifications
var subscription = signal.subscribe((data) => console.log(data));

// publish some data to subscribers
signal.publish(13);

// remove listener
subscription.dispose();

There is a way to subscribe to a single update

var signal = new Newsletter();

// subscribe to a single update
var subscription = signal.subscribe((data) => {
  subscription.dispose();
  console.log(data);
});

// will call a listener and remove it
signal.publish(13);

// no listeners called
signal.publish(14);

The project is licensed under the MIT license.

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i newsletter

      Weekly Downloads

      8

      Version

      4.0.2

      License

      MIT

      Unpacked Size

      4.37 kB

      Total Files

      6

      Last publish

      Collaborators

      • alexeyraspopov