在 golang 中使用 neast 和数组创建高级结构

大家好,我正在尝试学习 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"`

}

有没有更透明的方法来做到这一点?


慕丝7291255
浏览 166回答 2
2回答

温温酱

如果你想打破类型而不是内联那些匿名声明,它看起来像这样;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 } } } }

ABOUTYOU

您可以像这样分离嵌套结构。http://play.golang.org/p/ghcMuFOdQC
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go