我正在遵循 Pluralsight 的教程并完全按照它所说的去做,编译甚至可以工作,但是在浏览器上刷新页面时,应用程序会出现混乱并在控制台上输出错误,并且 http 服务器无法按预期工作。
产生这个错误的src代码如下:
package main
import (
"net/http"
"text/template"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, req *http.Request) {
w.Header().Add("Content Type", "text/html")
templates := template.New("template")
templates.New("test").Parse(doc)
templates.New("header").Parse(header)
templates.New("footer").Parse(footer)
context := Context{
[3]string{"Lemon", "Orange", "Apple"},
"the title",
}
templates.Lookup("test").Execute(w, context)
})
http.ListenAndServe(":80", nil)
}
const doc = `
{{template "header" . Title}}
<body>
<h1>List of Fruit</h1>
<ul>
{{range .Fruit}}
<li>{{.}}</li>
{{end}}
</ul>
</body>
`
const header = `
<!DOCTYPE html>
<html>
<head><title>{{.}}</title></head>
`
const footer = `
</html>
`
type Context struct {
Fruit [3]string
Title string
}
MYYA
相关分类