gpt4 book ai didi

go - 在 golang 中使用 template.ParseFiles 的多个文件

转载 作者:IT老高 更新时间:2023-10-28 13:03:42 26 4
gpt4 key购买 nike

例如.go,我有

package main

import "html/template"
import "net/http"

func handler(w http.ResponseWriter, r *http.Request) {
t, _ := template.ParseFiles("header.html", "footer.html")
t.Execute(w, map[string] string {"Title": "My title", "Body": "Hi this is my body"})
}

func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}

在 header.html 中:

Title is {{.Title}}

在footer.html中:

Body is {{.Body}}

当转到 http://localhost:8080/ 时,我只看到“Title is My title”,而不是第二个文件 footer.html。如何使用 template.ParseFiles 加载多个文件?最有效的方法是什么?

提前致谢。

最佳答案

只有第一个文件用作主模板。其他模板文件需要从第一个开始包含,如下所示:

Title is {{.Title}}
{{template "footer.html" .}}

"footer.html" 后面的点将数据从Execute 传递到footer 模板——传递的值变成. 中包含的模板。

关于go - 在 golang 中使用 template.ParseFiles 的多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12224436/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com