Verwendung von Basisvorlagen in Golang HTML/Template
In Ihrem gegebenen Szenario stehen Sie vor einem Missverständnis bezüglich der Verwendung von Basisvorlagen. Das Problem liegt in Ihrer Annahme, dass die Seiten 1 und 2 dieselbe Vorlage verwenden, obwohl sie in Wirklichkeit auf dieselbe Basisvorlage verweisen und eindeutige Inhaltsabschnitte definieren.
Kanonische Verwendung von Basisvorlagen
Um Basisvorlagen effektiv zu nutzen, befolgen Sie diese Schritte:
Beispielimplementierung
Unten finden Sie eine Beispielimplementierung basierend auf Ihrem bereitgestellten Code:
base.html
{{define "base"}} <!DOCTYPE html> <html lang="en"> <body> header... {{template "content" .}} footer... </body> </html> {{end}}
page1.html
{{define "content"}} <div> <h1>Page1</h1> </div> {{end}} {{template "base.html"}}
page2.html
{{define "content"}} <div> <h1>Page2</h1> </div> {{end}} {{template "base.html"}}
Vorlagenanalyse und -ausführung
Sobald Ihre Vorlagen definiert sind, können Sie sie mit template.New("").ParseFiles(page1.html, base.html analysieren )) und führen Sie sie mit tmpl.ExecuteTemplate(w, "base", yourContext) aus.
Das obige ist der detaillierte Inhalt vonWie funktionieren Basisvorlagen in Golang HTML/Template?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!