Heim > Backend-Entwicklung > Golang > Wie kann ich die Go-Vorlagenausgabe in einer Variablen erfassen?

Wie kann ich die Go-Vorlagenausgabe in einer Variablen erfassen?

Susan Sarandon
Freigeben: 2024-12-02 02:16:14
Original
523 Leute haben es durchsucht

How Can I Capture Go Template Output into a Variable?

Vorlagenausgabe in einer Variablen abrufen

Im Vorlagensystem von Go gibt die Execute-Methode die gerenderte Vorlage an das bereitgestellte io.Writer-Argument aus. Standardmäßig wird dies normalerweise an die Standardausgabe weitergeleitet (z. B. os.Stdout). In bestimmten Szenarien kann es jedoch wünschenswert sein, die Vorlagenausgabe zur weiteren Bearbeitung in einer Variablen zu erfassen.

Um dies zu erreichen, können Sie zwei alternative Ansätze nutzen:

Verwendung von Bytes .Buffer:

var tpl bytes.Buffer
if err := t.Execute(&tpl, data); err != nil {
    return err
}

result := tpl.String()
Nach dem Login kopieren

bytes.Buffer implementiert die io.Writer-Schnittstelle, sodass Sie sie als Ziel für verwenden können Vorlagenausgabe. Nach dem Execute-Aufruf können Sie den gerenderten Inhalt mit der String-Methode als String abrufen.

Verwendung von strings.Builder:

builder := &strings.Builder{}
if err := t.Execute(builder, data); err != nil {
    return err
}
result := builder.String()
Nach dem Login kopieren

strings.Builder bietet eine speziellere Art, Saiten zu sammeln. Es bietet Methoden, die auf eine effiziente Zeichenfolgenverkettung zugeschnitten sind, wodurch es sich in bestimmten Situationen besonders für die Erfassung der Vorlagenausgabe eignet.

Das obige ist der detaillierte Inhalt vonWie kann ich die Go-Vorlagenausgabe in einer Variablen erfassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage