慕碼人8056858
2021-12-07 10:45:25
是否可以在golang中呈現(xiàn)多個(gè)具有相同名稱的html模板。原因是,我想制作一個(gè)布局并將其重用于多個(gè)視圖。例如:{{define "MainLayout"}}<html> <head> <title>{{.Title}}</title> </head> <body> <div>{{template "Content" .}}</div> </body></html>{{end}}內(nèi)容可以是不同的模板,都由 {{define "Content"}} 定義
2 回答

慕容3067478
TA貢獻(xiàn)1773條經(jīng)驗(yàn) 獲得超3個(gè)贊
你是如何解析模板的?同一個(gè)模板樹中不能有兩個(gè)同名的模板。但是,您可以創(chuàng)建一個(gè)自定義解析函數(shù),該函數(shù)只會(huì)將一個(gè)名為“內(nèi)容”的模板添加到您的模板樹中。
示例:https : //play.golang.org/p/35X3i_jPzS

尚方寶劍之說
TA貢獻(xiàn)1788條經(jīng)驗(yàn) 獲得超4個(gè)贊
我相信 elithrar 有你正在尋找的東西,但不幸的是它目前不受支持。處理此問題的典型方法是在自己的模板中定義頁眉和頁腳,然后執(zhí)行與您的方法相反的方法。您可以將提供給模板解析器的結(jié)構(gòu)傳遞到這些模板中以呈現(xiàn)您的頁面。
{{define "header"}}
<html>...
{{end}}
{{define "footer"}}
...</html>
{{end}}
{{define "Content"}}
{{template "header" .}}
HTML
{{template "footer" .}}
{{end}}
- 2 回答
- 0 關(guān)注
- 218 瀏覽
添加回答
舉報(bào)
0/150
提交
取消