【发布时间】:2022-12-01 16:57:16
【问题描述】:
按照 google wire 的例子,我们可以通过以下方式初始化事件结构
消息.go:
type Message string
func NewMessage() Message {
//TBD
}
事件.go
func NewEvent(g Message ) Event {
return Event{Message : g}
}
type Event struct {
Message message
}
func (e Event) Start() {
fmt.Println(msg)
}
我们可以通过电线初始化:
func main() {
e := InitializeEvent()
e.Start()
}
func InitializeEvent() Event {
wire.Build(NewEvent, NewMessage)
return Event{}
}
有什么方法可以使用 init 函数返回多个值,但我们只需要一个返回值来注入,例如:
func NewMessage() (Message,error ){
//TBD
}
或者
func NewMessage() (Message,Greeter) {
//TBD
}
【问题讨论】:
标签: go