Skip to content
This repository has been archived by the owner on Dec 1, 2023. It is now read-only.

pagekit/vue-event-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

vue-event-manager Version License Downloads

The plugin for Vue.js provides a declarative way to bind events to a global event manager. It uses the Vue lifecycle to automatically bind and unbind all events.

Features

  • Supports event priorities and Promise based asynchronous events
  • Supports latest Firefox, Chrome, Safari, Opera and IE9+
  • Supports Vue 1.0 & Vue 2.0
  • Compact size 2KB

Installation

You can install it via yarn or NPM.

$ yarn add vue-event-manager
$ npm install vue-event-manager

CDN

Available on jsdelivr or unpkg.

<script src="https://cdn.jsdelivr.net/npm/vue-event-manager@1.0.5"></script>

Example

new Vue({

  created() {

    // trigger event
    this.$trigger('someEvent', {foo: 'bar'});

  },

  events: {

    // event handler (priority 0)
    someEvent(param) { ... },

    // event handler (priority 10)
    earlyEvent: {

        // handler callback
        handler(param) { ... },

        // a higher priority, means earlier execution
        priority: 10

    },

    // event handler (priority -10)
    lateEvent: {

        // handler callback
        handler(param) { ... },

        // a lower priority, means late execution
        priority: -10

    }

  }

});

Changelog

Details changes for each release are documented in the release notes.

Contribution

If you find a bug or want to contribute to the code or documentation, you can help by submitting an issue or a pull request.

License

MIT