Как инициализировать фрагмент анонимной структуры:
type DiscMessage struct {
Embeds []struct {
Title string `json:"title"`
Description string `json:"description"`
URL string `json:"url"`
Color int `json:"color"`
} `json:"embeds"`
}
_ = DiscMessage{Embeds: []struct{
Title string `json:"title"`
Description string `json:"description"`
URL string `json:"url"`
Color int `json:"color"`
}{
{"title1", "description1", "url1", 6545520},
}}
Как вы можете видеть, это может стать слишком многословным для любого здравомыслящего ума, и если вам придется выполнять инициализацию во многих других местах, это будет настоящим бременем.
Чтобы исправить это, вы можете объявить тип элемента среза, т.е. дать ему имя, чтобы он больше не был анонимным, и избавить себя от ненужного набора текста.
type DiscMessageEmbed struct {
Title string `json:"title"`
Description string `json:"description"`
URL string `json:"url"`
Color int `json:"color"`
}
type DiscMessage struct {
Embeds []DiscMessageEmbed `json:"embeds"`
}
_ = DiscMessage{Embeds: []DiscMessageEmbed{{"title1", "description1", "url1", 6545520}}}