你看 template 渲染的函数签名:Execute(wr io.Writer, data interface{}) error显然渲染内容可输出到实现 io.Writer 接口的任何地方,比如 os.Stdout,文件,buffer 等地方 type User struct { Name string } func main() { tpl := template.New("example") tpl, _ = tpl.Parse("<p> hello {{.Name}} </p>") data := User{Name: "Tom"} var buf bytes.Buffer if err := tpl.Execute(&buf, data); err != nil { log.Fatal(err) } fmt.Println(buf.String()) // 渲染后的字符串 // <p> hello Tom </p> }
你看 template 渲染的函数签名:
Execute(wr io.Writer, data interface{}) error
显然渲染内容可输出到实现
io.Writer
接口的任何地方,比如os.Stdout
,文件,buffer 等地方