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

    2.1.13 • Public • Published

    Strongly Typed Events - Events

    Add events that are modeled after .Net with a sender and argument to your project. If you use typescript, you can leverage the support for generics and get strongly typed code.

    Need a different type of event? Check out the others.

    Build Status npm version License: MIT

    Subscription made easy

    An example says more than a 1000 words. Imagine if you have events like this on your class:

    let clock = new Clock("Smu", 1000);
    
    //log the name of the clock and the tick argument to the console - this is an event
    clock.onClockTick.subscribe((c, n) =>
      console.log(`${c.name} ticked ${n} times.`)
    );

    Events made easy

    So let's look at the implementation from a TypeScript perspective. (Do you program NodeJs without typescript? Check this)

    import { EventDispatcher } from "ste-events";
    
    class Clock {
      private _onClockTick = new EventDispatcher();
      private _ticks: number = 0;
    
      constructor(public name: string, timeout: number) {
        setInterval(() => {
          this._ticks += 1;
          this._onClockTick.dispatch(this, this._ticks);
        }, timeout);
      }
    
      public get onClockTick() {
        return this._onClockTick.asEvent();
      }
    }

    Check the documentation or the examples for more information.

    Need more info? Check the repo.

    Maintenance

    This project is maintained by Kees C. Bakker.

    Install

    npm i ste-events

    DownloadsWeekly Downloads

    4,603

    Version

    2.1.13

    License

    MIT

    Unpacked Size

    15.8 kB

    Total Files

    19

    Last publish

    Collaborators

    • keestalkstech