eventbusx-js
v1.0.0
Published
轻量级事件总线,发射器监听状态派发事件,接收器统一处理业务逻辑
Maintainers
Readme
eventbus
极简轻量级事件总线工具,拆分事件发射与事件接收,解耦状态监听与业务执行
作者信息
姓名:董翔 发布年份:2026 NPM账号:dongxiang678 联系邮箱:[email protected]
工作原理
- Emitter 事件发射器
- 绑定需要监听的数据源
- 自定义状态判断规则
- 根据规则结果自动生成不同事件标识消息
- Acceptor 事件接收器
- 接收发射器传递的事件消息
- 匹配不同消息,执行对应业务逻辑
- 纯消息转发,不干预状态判断逻辑
安装
npm install eventbusx-js基础使用示例
const EventBus = require('eventbus');
// 定义监听数据源
const data = { value: 0 };
// 初始化发射器、接收器
const eventEmitter = new EventBus.Emitter(data);
const eventAcceptor = new EventBus.Acceptor();
// 业务监听函数
function monitorData() {
// 设置事件基础标识
eventEmitter.setBaseMsg("overflow");
// 设置状态监听规则
eventEmitter.watch(item => item.value >= 5);
// 接收器接收消息并执行逻辑
eventAcceptor.run(eventEmitter.execute(), (eventMsg) => {
if (eventMsg === "overflow") {
console.log(`消息:${eventMsg} 状态达标,执行超限逻辑`);
} else {
data.value++;
console.log(`消息:${eventMsg} 正常运行中`);
}
});
console.log("当前数值:", data.value, "\n");
}
// 循环监听触发
for (let i = 0; i < 6; i++) {
monitorData();
}开源协议
MIT License
