1 回答

TA貢獻1798條經驗 獲得超7個贊
template.ParseFiles()
不報告丟失的模板,因為通常不是所有的模板都在一個步驟中被解析,并且報告丟失的模板(by template.ParseFiles()
)不允許這樣做。
可以使用來自多個來源的多個調用來解析模板。
例如,如果您調用該Template.Parse()
方法或您的模板,您可以向其添加更多模板:
_, err = t.Parse(`{{define "doesnotexist"}}the missing piece{{end}}`)
if err != nil {
fmt.Printf("Parse failed: %v", err)
return
}
上面的代碼將添加缺失的部分,您的模板執行將成功并生成輸出(在Go Playground上嘗試):
<html>
<head>
<title> test </title>
</head>
<body>
<h1> Hello, world!</h1>
the missing piece
</body>
</html>
更進一步,不需要解析和“呈現”所有模板為您提供了優化的可能性。可能存在“普通”用戶永遠不會使用的管理頁面,并且僅當管理員用戶啟動或使用您的應用程序時才需要。在這種情況下,您可以通過不必解析管理頁面(僅當/如果管理員用戶使用您的應用程序)來加速啟動和相同的內存。
- 1 回答
- 0 關注
- 136 瀏覽
添加回答
舉報