vue-simple-events

    1.1.2 • Public • Published

    vue-simple-events

    Yet another event management plugin, but WITHOUT Vue instance

    About

    This is just a simple wrapper around js-simple-events that helps to manage events in a simple way without creating a Vue instance. It also supports TypeScript!

    And it's really light - ~1kb in size!

    Methods

    Method Params Description
    vm.$events.emit event, payload Emit the event with the given payload.
    vm.$events.$emit event, payload Alias for emit
    vm.$events.fire event, payload Alias for emit
    vm.$events.on event, callback Listen for the event with the given callback.
    vm.$events.$on event, callback Alias for on
    vm.$events.listen event, callback Alias for on
    vm.$events.once event, callback Listen for the event once, after handling - remove the listener.
    vm.$events.$once event, callback Alias for $once
    vm.$events.off event, callback Remove event listener(s) for the event.
    vm.$events.$off event, callback Alias for off
    vm.$events.remove event, callback Alias for off

    Examples

    // Import and initialize
    import Vue from 'vue'
    import EventManager from 'vue-simple-events'
     
    Vue.use(EventManager)
    /// Component 1
     
    methods: {
      eventHandler(payload) {
        console.log('Yay, events work!', payload);
      }
    },
    created() {
      this.$events.on('test', this.eventHandler);
      this.$events.once('test', () => console.log('This will be called just once!'));
    },
    beforeDestroy() {
      this.$events.off('test', this.eventHandler);
    }
    /// Component 2
     
    created() {
      // Emit events
      this.$events.emit('test', 'Hello!');
      // Logs:
      // -> Yay, events work! Hello!
      // -> This will be called just once!
     
      this.$events.emit('test', 'Hello!');
      // Logs:
      // -> Yay, events work! Hello!
      // (The 'once' handler isn't fired)
    }

    Demo

    webpack 4 application

    Install

    npm i vue-simple-events

    DownloadsWeekly Downloads

    6

    Version

    1.1.2

    License

    MIT

    Unpacked Size

    12.4 kB

    Total Files

    9

    Last publish

    Collaborators

    • kaskar2008
    • raiondesu