外观
信号 $signal
提示
Bob 1.8.0+ 可用
用于发送信号的 API
$signal.new()
初始化一个信号对象
js
var signal = $signal.new()
signal.send(any)
发送信号,可以在参数中传一些数据
js
var signal = $signal.new()
// 不需要数据
signal.send()
// 需要传输数据
signal.send({"message": "123"})
signal.subscribe(function)
订阅信号,需传入一个函数接受回调,方法会返回一个 disposable
对象,用于取消对信号的订阅。
js
var signal = $signal.new()
// 订阅信号
var disposable = signal.subscribe(function (data) {
// data 即为发送信号时传输的数据,如果发送信号未传输数据,则为 undefined
$log.info(`收到信号:data=${data}`)
})
// 取消订阅信号
disposable.dispose()
signal.removeAllSubscriber()
移除信号的所有订阅者,之前的订阅全部失效。
js
var signal = $signal.new()
signal.subscribe(function (data) {
$log.info(`收到信号:data=${data}`)
})
// 移除所有订阅制
signal.removeAllSubscriber()