单个:
指定渲染页面 http.HandleFunc("/user/login.shtml", func(writer http.ResponseWriter, request *http.Request) { tpl,err := template.ParseFiles("view/user/login.html") if nil!=err{ //打印直接退出 log.Fatal(err.Error()) } //nil 对应页面传参 tpl.ExecuteTemplate(writer,"/user/login.shtml",nil) })
所有:
//渲染指定目录下所有页面 func RegisterView(){ //一次解析出全部模板 tpl,err := template.ParseGlob("view/**/*") if nil!=err{ log.Fatal(err) } //通过for循环做好映射 for _,v := range tpl.Templates(){ tplname := v.Name(); http.HandleFunc(tplname, func(w http.ResponseWriter, request *http.Request) { err := tpl.ExecuteTemplate(w,tplname,nil) if err!=nil{ log.Fatal(err.Error()) } }) } }