我有一个包含所有全局变量的 golang 文件,例如静态文件路径、版本 ID 等。我需要在模板中使用它,但在渲染模板时不传递上下文。这是一个演示:
设置.go
const STATIC_FILE="/static/"
const VERSION = 1
example.html
<script src="{{.STATIC_FILE}}assets/plugins/angular/angular-checklist.js?v={{.VERSION}}" type="text/javascript"></script>
注意:我正在寻找不同的方式,没有将上下文传递给模板执行方法。
最佳答案
我不知道你能不能直接访问全局变量,但我一直在使用模板函数来做到这一点。
var func_map = template.FuncMap{
"getSettings" : func() {
return Settings{}
}
}
temp,err := template.New(template_name).Funcs(funcMap).Delims("{[", "]}").Parse(string(dat))
关于templates - Golang 从模板访问设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46867759/