Heim >Backend-Entwicklung >Golang >Wie zeige ich Daten in Go-HTML-Vorlagen basierend auf dem Strukturfeldtyp an?

Wie zeige ich Daten in Go-HTML-Vorlagen basierend auf dem Strukturfeldtyp an?

Susan Sarandon
Susan SarandonOriginal
2024-11-26 18:05:12397Durchsuche

How to Display Data in Go HTML Templates Based on Struct Field Type?

Umschalten oder if/elseif/else innerhalb von Golang-HTML-Vorlagen

Problem:

Anzeige Daten in einer Vorlage basierend auf dem Typ eines Go-Strukturfelds. Die aktuelle Lösung besteht darin, mehrere {{if}}-Anweisungen zu verschachteln oder separate Funktionen zu erstellen, um den Typ zu testen.

Lösung:

Switch-Anweisung:

{{range .Paragraphs}}
    {{switch .Type}}
    {{case paragraph_hypothesis}}:
        -- hypothesis presentation code  --
    {{case paragraph_attachment}}:
        -- attachment presentation code  --
    {{case paragraph_menu}}:
        -- menu --
    {{default}}:
        -- default code --
    {{end}}
{{end}}

if/elseif/else Aussage:

{{range .Paragraphs}}
    {{if .IsAttachment}}
        -- attachment presentation code  --
    {{elseif .IsMenu}}
        -- menu --
    {{else}}
        -- default code --
    {{end}}
{{end}}

In diesem Beispiel prüft das zusätzliche {{else if .IsMenu}} nach der Prüfung auf „paragraph_attachment“ den Typ „paragraph_menu“.

Verwendung von Funktionen :

In Fällen, in denen die Präsentationslogik komplex ist, empfiehlt es sich, separate Funktionen im zu definieren Gehen Sie Code. Sie könnten beispielsweise Funktionen wie GetHypothesisHTML() und GetAttachmentHTML() definieren und sie dann über die Vorlage aufrufen:

{{range .Paragraphs}}
    {{if .IsHypothesis}}
        {{GetHypothesisHTML .}}
    {{elseif .IsAttachment}}
        {{GetAttachmentHTML .}}
    {{elseif .IsMenu}}
        -- menu --
    {{else}}
        -- default code --
    {{end}}
{{end}}

Durch die Nutzung von Switch-Anweisungen, if/elseif/else-Anweisungen oder dedizierten Funktionen können Sie dies tun Zeigen Sie Daten in Ihrer Vorlage basierend auf dem Typ eines Go-Strukturfelds auf saubere und prägnante Weise an.

Das obige ist der detaillierte Inhalt vonWie zeige ich Daten in Go-HTML-Vorlagen basierend auf dem Strukturfeldtyp an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn