私はこの構造体を持っています:
const (
paragraph_hypothesis = 1<<iota
paragraph_attachment = 1<<iota
paragraph_menu = 1<<iota
)
type Paragraph struct {
Type int // paragraph_hypothesis or paragraph_attachment or paragraph_menu
}
Type段落を依存する方法で表示したい。
私が見つけた唯一の解決策は、 Go およびネストされたisAttachmentのテストなどの専用関数に基づいていました。Type{{if}}
{{range .Paragraphs}}
{{if .IsAttachment}}
-- attachement presentation code --
{{else}}{{if .IsMenu}}
-- menu --
{{else}}
-- default code --
{{end}}{{end}}
{{end}}
IsSomething実際、私はより多くの型を持っているため、さらに奇妙になり、関数を含む Go コードとそれらを含むテンプレートの両方が雑然としてい{{end}}ます。
きれいな解決策は何ですか?go テンプレートに解決策はありますswitchか? if/elseif/elseまたは、これらのケースを処理するためのまったく異なる方法ですか?