在 Go HTML/Template 中使用基本佈局模板
在提供的程式碼中,問題在於基本模板文件的使用不當。為了解決這個問題,我們需要定義一個基本模板檔案並在我們的部分模板中引用它,該檔案將動態執行。
基本模板(base.html):
該文件定義了頁面的整體佈局,包括所有頁面共享的元素,例如頁眉、頁腳和導航。
{{define "base"}} <!DOCTYPE html> <html lang="en"> <body> <!-- Header --> {{template "content" .}} <!-- Footer --> </body> </html> {{end}}
部分範本 1 (page1.html):
此檔案定義特定於頁 1 的內容。
{{define "content"}} <h1>Page 1</h1> {{end}} {{template "base"}}
部分範本2 (page2.html):
此檔案定義特定於頁 2 的內容。
{{define "content"}} <h1>Page 2</h1> {{end}} {{template "base"}}
用法:
使用基本模板,解析包含基本和內容的檔案templates:
tmpl, err := template.ParseFiles("page1.html", "base.html") if err != nil { // Handle error }
然後,執行具有指定內容的範本:
err = tmpl.ExecuteTemplate(w, "base", yourContext) if err != nil { // Handle error }
這將在基本範本佈局中呈現適當的內容。
以上是基本佈局模板如何與 Go HTML/Template 有效結合使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!