import { default as createMitt } from 'mitt'
import Vue from 'vue'
/**
* Mitt default instance
*
* IMPORTANT NOTICE: Avoid using mitt as much as possible. Ask for alternative communication strategies.
*/
export const mitt = (Vue.prototype.$mitt = createMitt())
export default mitt
Vue.use({
install() {
Vue.$mitt = Vue.prototype.$mitt = {
on(name, callback) {
//console.log('$mitt.on',name)
return mitt.on(name, callback)
},
off(name, callback) {
//console.log('$mitt.off',name)
return mitt.off(name, callback)
},
emit(name, data) {
//console.log('$mitt.emit',name, data)
return mitt.emit(name, data)
},
}
},
})
Source