Home > SYS_MessageBus > push
SYS_MessageBus.push() method
私有消息总线:推消息
签名
typescript
function push(topic: string, message: any): void;1
参数名
参数 | 类型 | 描述 |
|---|---|---|
topic | string | 主题 |
message | any | 消息 |
返回值
void
备注
每个消息只有一个 Puller 可以收到
示例
javascript
// 1. 先推送消息(此时还没有 Puller,消息排队保留)
eda.sys_MessageBus.push('嘉立创示例_推送', '先推后拉的消息');
// 2. 再注册拉取回调,排队的消息立即交付
const task = eda.sys_MessageBus.pull('嘉立创示例_推送', (message) => {
console.log('拉到排队消息:', message);
});
// 3. 常规顺序演示:先注册再推送
const task2 = eda.sys_MessageBus.pull('嘉立创示例_推送', (message) => {
console.log('拉到实时消息:', message);
});
eda.sys_MessageBus.push('嘉立创示例_推送', '先拉后推的消息');
// 4. 取消任务,恢复原状
task.cancel();
task2.cancel();
console.log('已取消拉取任务');1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18