如何使用模板组织Golang WebApp?

时间:2018-03-05 05:00:27

标签: go

关于在Go中编写WebApp的小问题,

实际上我有一个工作的webApp,它与API对话并生成一个HTML模板来显示我的结果,

我使用gorilla/mux并按照以下方式提供我的模板:

router.Handle("/", http.HandlerFunc(handlers.GetHome)).Methods("GET")

tmpl := template.ParseFiles("templates/_head.html.tmpl", "templates/home.html.tmpl")

tmpl.Execute(w, ClusterDatas)

因此,每次请求时,GO都会读取我的html文件。 这是一个很好的方法吗? 是否有可能(并且更好)获取Golang二进制文件中包含的HTML?

非常感谢你的任何答案。

1 个答案:

答案 0 :(得分:1)

如果我理解正确,我不会认为这样做有任何大问题。但是,您可以将模板解析为实际处理程序之外的变量,然后在处理程序函数本身中调用tmp.Execute。这样就省去了每次解析文件的需要。您不需要(并且可以&#t;)将html加载到二进制文件中。