gpt4 book ai didi

其他包中未定义 html/template 类型的 Golang 全局变量

转载 作者:数据小太阳 更新时间:2023-10-29 03:39:34 25 4
gpt4 key购买 nike

我已经按照这个问题 Is it necessary to put templates into a map for reusing in Go? 中的建议声明了一个全局变量

我在 func main() 之前在我的主包中声明了全局变量,但它仍然没有在另一个包中声明。

package main

import{
"html/template"
.....
)

var tmpl = template.New("master")

func main() {

func init() {

_, err := tmpl.ParseGlob("templates/*.html")
if err != nil {
log.Fatalln("Error loading templates:", err)
}
....
}

在另一个包里我写了一个函数:

    tmpl.ExecuteTemplate(w, "venue-index.html", res)

但是我得到一个错误

tmpl: undefined

我意识到还有其他类似的问题,但答案并没有解决我的问题。我做错了什么?

最佳答案

tmpl 将不会从另一个包中可见。要从其他包中导入变量,您必须通过完全限定名称引用它们,并让变量以大写字母开头,pack.Tmpl 等。

此外,也不可能将变量从 main 导入到其他包中。

关于其他包中未定义 html/template 类型的 Golang 全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54498962/

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