go-events 是一个 go 实现的事件及事件过滤器库

go-events 是一个 go 实现的事件及事件过滤器库。
帮助函数类似于 wordpress 的 hook 插件函数。

下载

go get -u github.com/deatil/go-events

使用

package main

import (
    "fmt"
    "github.com/deatil/go-events/events"
)

func main() {
    // 事件监听
    events.AddAction("test1", func() {
        fmt.Println("test1")
    }, events.DefaultSort)

    events.DoAction("test1")

    // 过滤器
    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 
}

添加事件排序,值越大越靠前。通常填写默认值即可。

项目地址

github.com/deatil/go-events

本作品采用《CC 协议》,转载必须注明作者和本文链接
我们走了很远的路,终于发现,路已经不止一条
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!