markthree / tob-mitt

mitt 的 uni_modules 完美迁移版本

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

tob-mitt

vue3 中,mitt 是一个推荐的 eventBus 库。这是一个 uni_modules 的完美迁移版本。



原仓库 📦

👉 mitt



Usage 🦖

import mitt from "@/uni_modules/tob-mitt/index.js"

const bus = mitt()

// 注册两个指定类型的事件函数
bus.on('foo', () => console.log('我是foo1'))
bus.on('foo', () => console.log('我是foo2'))

// 触发该类型的事件函数
bus.emit('foo') // 将打印 我是foo1,我是foo2

// 注册一个带形参的事件函数
bus.on('bar', (msg) => console.log(msg))

// 触发事件函数的同时设置实参
bus.emit('bar', '你好') // 将打印 你好

bus.off('bar') // 卸载所有 bar 事件函数

const bar = () => console.log('我好')
bus.on('bar', bar)
bus.off('bar', bar) // 单独卸载该事件函数

bus.emit('bar') // 因为被卸载了,所以什么都不会触发

// 注册所有类型的事件函数
bus.on('*', () => {
    console.log("不论什么时候都会触发")
})

// 触发 * 类型的事件函数
bus.emit() // 打印 不论什么时候都会触发

bus.emit('foo') // 打印 我是foo1,我是foo2 不论什么时候都会触发

bus.all // 保存事件函数的 map


组织 🦔

欢迎关注 帝莎编程



License

Made with markthree

Published under MIT License.

About

mitt 的 uni_modules 完美迁移版本

License:MIT License


Languages

Language:JavaScript 100.0%