Documentation
¶
Overview ¶
Package events 提供简单的事件管理器
Index ¶
- Constants
- Variables
- func Clear()
- func ClearErrors(evt ...interface{})
- func Error(evt ...interface{}) error
- func Errors(evt ...interface{}) []error
- func Events() []interface{}
- func Len() int
- func ListenerCount(evt interface{}) int
- func MaxListeners() int
- type Emitter
- func Default() Emitter
- func Emit(evt interface{}, arguments ...interface{}) Emitter
- func EmitSync(evt interface{}, arguments ...interface{}) Emitter
- func New() Emitter
- func Off(evt interface{}, listener Listener) Emitter
- func OffAll(evt interface{}) Emitter
- func On(evt interface{}, listener Listener) Emitter
- func Once(evt interface{}, listener Listener) Emitter
- func Publish(evt interface{}, arguments ...interface{}) Emitter
- func PublishSync(evt interface{}, arguments ...interface{}) Emitter
- func SetMaxListeners(n int) Emitter
- func Subscribe(evt interface{}, listener Listener) Emitter
- func SubscribeOnce(evt interface{}, listener Listener) Emitter
- func Trigger(evt interface{}, arguments ...interface{}) Emitter
- func TriggerSync(evt interface{}, arguments ...interface{}) Emitter
- func Unsubscribe(evt interface{}, listener Listener) Emitter
- func UnsubscribeAll(evt interface{}) Emitter
- type Listener
Constants ¶
View Source
const ( // Version 版本号 Version = "0.2" // DefaultMaxListeners 每个事件最大监听器数量 DefaultMaxListeners = 0 )
Variables ¶
View Source
var EnableWarning = false
EnableWarning 允许警告信息,如果监听器数量达到设定值输出警告信息,默认false
View Source
var ErrNoneFunction = errors.New("kind of value for listener is not function")
ErrNoneFunction 不是有效的函数
Functions ¶
Types ¶
type Emitter ¶
type Emitter interface {
// Emit 触发事件
Emit(evt interface{}, arguments ...interface{}) Emitter
// EmitSync 同步触发事件
EmitSync(evt interface{}, arguments ...interface{}) Emitter
// Trigger Emit 别名
Trigger(evt interface{}, arguments ...interface{}) Emitter
// TriggerSync EmitSync 同步触发事件别名
TriggerSync(evt interface{}, arguments ...interface{}) Emitter
// Publish 发布事件 Emit 别名
Publish(evt interface{}, arguments ...interface{}) Emitter
// PublishSync EmitSync 同步触发事件别名
PublishSync(evt interface{}, arguments ...interface{}) Emitter
// On 注册事件监听器
On(evt interface{}, listener Listener) Emitter
// Subscribe 订阅事件 On 别名
Subscribe(evt interface{}, listener Listener) Emitter
// Once 注册一次性事件监听器
Once(evt interface{}, listener Listener) Emitter
// SubscribeOnce 订阅一次性事件
SubscribeOnce(evt interface{}, listener Listener) Emitter
// Off 移除指定事件监听器
Off(evt interface{}, listener Listener) Emitter
// Unsubscribe 取消订阅
Unsubscribe(evt interface{}, listener Listener) Emitter
// Off 移除指定事件所有监听器
OffAll(evt interface{}) Emitter
// UnsubscribeAll 移除指定事件所有监听器
UnsubscribeAll(evt interface{}) Emitter
// Clear 清除所有事件及监听器
Clear()
// SetMaxListeners 设置事件监听器最大数量,0 无限制
SetMaxListeners(n int) Emitter
// MaxListeners 获取事件监听器最大数量
MaxListeners() int
// Events 获取所有事件列表
Events() []interface{}
// ListenerCount 获取指定事件监听器数量
ListenerCount(evt interface{}) int
// Listeners 获取指定事件监听器列表
Listeners(evt interface{}) []Listener
// Len 获取注册事件数量
Len() int
// Errors 获取事件管理器错误
Errors(evt ...interface{}) []error
// Error 获取事件管理器最后一个错误
Error(evt ...interface{}) error
// ClearErrors 清除事件管理器错误
ClearErrors(evt ...interface{})
}
Emitter 事件管理接口
func Publish ¶ added in v0.2.0
func Publish(evt interface{}, arguments ...interface{}) Emitter
Publish 发布事件
func PublishSync ¶ added in v0.2.0
func PublishSync(evt interface{}, arguments ...interface{}) Emitter
PublishSync 同步触发事件
func SubscribeOnce ¶ added in v0.2.0
SubscribeOnce 订阅一次性事件
func TriggerSync ¶
func TriggerSync(evt interface{}, arguments ...interface{}) Emitter
TriggerSync 同步触发事件
func Unsubscribe ¶ added in v0.2.0
Unsubscribe 移除指定事件监听器
func UnsubscribeAll ¶ added in v0.2.0
func UnsubscribeAll(evt interface{}) Emitter
UnsubscribeAll 移除指定事件所有监听器
Click to show internal directories.
Click to hide internal directories.