大家好,我正在尝试学习 golang 我正在创建我自己的项目,该项目需要创建我很难编写和初始化的结构。如果有人能帮我解决这个问题,我会很高兴的。 { "name":"message", "args":[ { "method":"joinChannel", "params":{ "channel":"CHANNEL", "name":"USERNAME", "token":"XXXX", "isAdmin":false } } ]}我在谷歌上寻找一些例子,但我唯一能找到的就是简单的例子。这是我想出来的type Channel struct { Name string `json:"name"` Args []struct { Method string `json:"method"` Params struct { Channel string `json:"channel"` Name string `json:"name"` Token string `json:"token"` Isadmin bool `json:"isAdmin"` } `json:"params"` } `json:"args"`}有没有更透明的方法来做到这一点?
2 回答
温温酱
TA贡献1752条经验 获得超4个赞
如果你想打破类型而不是内联那些匿名声明,它看起来像这样;
type Channel struct {
Name string `json:"name"`
Args []Arg `json:"args"`
}
type Arg struct {
Method string `json:"method"`
Params Params `json:"params"`
}
type Params struct {
Channel string `json:"channel"`
Name string `json:"name"`
Token string `json:"token"`
Isadmin bool `json:"isAdmin"`
}
myChan := Channel{"Name", []Arg{ Arg{"Method", Params{ "Channel", "Name", "Token", true } } } }
- 2 回答
- 0 关注
- 165 浏览
添加回答
举报
0/150
提交
取消