1 回答

TA貢獻(xiàn)1719條經(jīng)驗 獲得超6個贊
如果您以您所做的方式聲明結(jié)構(gòu)(嵌套結(jié)構(gòu)而不創(chuàng)建新類型),則在文字中使用它們會很復(fù)雜,因為您需要重復(fù)結(jié)構(gòu)定義。
你將被迫像這樣使用它:
success_message := S_LoginSuccessed{
Code: 123,
Timestamp: time.Now().Unix(),
Message: "123",
Data: struct {
User struct {
Sex string `json:"sex"`;
IsVip bool `json:"is_vip"`;
Name string `json:"name"`
}
}{User: struct {
Sex string
IsVip bool
Name string
}{Sex: "male", IsVip: true, Name: "123"}},
}
聲明類型可能會更加模塊化:
type User struct {
Sex string `json:"sex"`
IsVip bool `json:"is_vip"`
Name string `json:"name"`
}
type Data struct{
User User `json:"user"`
}
type S_LoginSuccessed struct {
Code int `json:"code"`
Data Data `json:"data"`
Timestamp int64 `json:"timestamp"`
Message string `json:"message"`
}
然后像這樣使用它:
success_message := S_LoginSuccessed{
Code: 123,
Timestamp: time.Now().Unix(),
Message: "123",
Data: Data{ User: User{"male", true, "123"} },
}
- 1 回答
- 0 關(guān)注
- 176 瀏覽
添加回答
舉報