learning-weekly
learning-weekly copied to clipboard
【开源自荐】go-events 是一个 go 实现的事件及事件过滤器库
- 项目地址:https://github.com/deatil/go-events
- 项目官网:https://github.com/deatil/go-events
- 语言类别:go
- 项目标题:go-events 事件库
- 项目描述:go-events 是一个 go 实现的事件及事件过滤器库
package main
import (
"fmt"
"github.com/deatil/go-events/events"
)
func main() {
// use action
events.AddAction("test1", func() {
fmt.Println("test1")
}, events.DefaultSort)
events.DoAction("test1")
// use Filter
events.AddFilter("test1", func(val string) string {
return "run test1 => " + val
}, events.DefaultSort)
data1 := "init1"
test := events.ApplyFilters("test1", data1)
fmt.Println(test)
// output: run test1 => init1
}