Socket
Socket
Sign inDemoInstall

small-emitter

Package Overview
Dependencies
0
Maintainers
1
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    small-emitter

A small event emitter library


Version published
Weekly downloads
1
decreased by-75%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

Emitter

简体中文 | English

A small event emitter library.

Usage

import Emitter from 'small-emitter'
const emitter = new Emitter();

// subscribe to events
emitter.on('foo', function (p1, p2, p3) {
 // ...
});

// subscribe the event only once
emitter.once('foo', function (p1, p2, p3) {
 // ...
});

// publish events
emitter.emit('foo', 'p1', 'p2', 'p3');

// clearing all events
emitter.clear()

// use reference functions
function fn() {}
emitter.on('foo', fn)
emitter.off('foo', fn)

API

on(name: string, callback: () => void)

  • Arguments

    • name name of the event
    • callback event's callback function
  • Example

    const emitter = new Emitter()
    
    emitter.on('foo', (data) => {
      console.log(data)
    })
    
    emitter.emit('foo', 1) // 1
    emitter.emit('foo', 2) // 2
    

once(name: string, callback: () => void)

  • Arguments

    • name name of the event
    • callback event's callback function
  • Example

    const emitter = new Emitter()
    
    emitter.once('foo', (data) => {
      // The function will only be executed once
      console.log(data)
    })
    
    emitter.emit('foo', 'a') // 'a'
    emitter.emit('foo', 'b') // Not output
    

emit(name: string, ...args: any[])

  • Arguments

    • name name of the event
    • ...args (optional) parameters passed in by the execution event
  • Example

    const emitter = new Emitter()
    
    emitter.once('bar', (message, name) => {
      console.log(`${message}, ${name}`)
    })
    
    emitter.emit('bar', 'hi', 'Jack') // hi, Jack
    

off(name: string, callback?: () => void)

  • Arguments

    • name name of the event
    • callback (optional) functions that need to be cleared or function reference
  • Example

    const emitter = new Emitter()
    
    const fn = (message) => {
      console.log(message)
    }
    
    emitter.on('bar', fn)
    emitter.emit('bar', 'hi') // hi
    emitter.off('bar', fn)
    emitter.emit('bar', 'Jack') // Not output
    

clear()

  • Calling this method will clear all events

  • Example

    const emitter = new Emitter()
    
    emitter.on('foo', (value) => {
      console.log(value)
    })
    
    emitter.on('bar', (value) => {
      console.log(value)
    })
    
    emitter.emit('foo', 'hi, foo')
    emitter.emit('bar', 'hi, bar') // hi, bar
    emitter.clear()
    emitter.emit('foo', 'hi, Jack') // Not output
    emitter.emit('bar', 'hi, Tom') // Not output
    

Keywords

FAQs

Last updated on 10 Dec 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc