{{define "head"}}
<!DOCTYPEHTMLPUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><title>Title</title></head><body>
head.html
</body></html>
{{end}}
{{define "foot"}}
<!DOCTYPEHTMLPUBLIC"-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd"><html><head><title>Title</title></head><body>
foot.html
</body></html>
{{end}}
package main
import("net/http""html/template")funcwelcome(w http.ResponseWriter, r *http.Request){//要加载所有需要被嵌套的文件
t,_:= template.ParseFiles("view/index.html","view/head.html","view/foot.html")//执行主模版,主要调用的方法
t.ExecuteTemplate(w,"layout",nil)}funcmain(){
server := http.Server{Addr:":8090"}
http.HandleFunc("/", welcome)
server.ListenAndServe()}
一.模版嵌套在实际项目中经常出现页面复用的情况,例如:整个网站的头部信息和底部信息复用可以使用动作{{template “模版名称”}}引用模版引用的模版必须在HTML中定义这个模版{{define "名称"}}html{{end}}执行主模版时也要给主模版一个名称,执行时调用的是ExecuteTemplate()方法{{define "layout"}}<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//E