登录
首页 >  Golang >  Go问答

在 golang 模板中传递变量

来源:stackoverflow

时间:2024-03-05 09:54:26 120浏览 收藏

从现在开始,努力学习吧!本文《在 golang 模板中传递变量》主要讲解了等等相关知识点,我会在golang学习网中持续更新相关的系列文章,欢迎大家关注并积极留言建议。下面就先一起来看一下本篇正文内容吧,希望能帮到你!

问题内容

我想使用 gotemplate 生成 2 个单独的文件,假设我有以下代码:

abuffer := new(bytes.buffer)
bbuffer := new(bytes.buffer)

atmpl, _ := template.parsefiles(afilepath)
atmpl.execute(abuffer, somevariables)

btmpl, _ := template.parsefiles(bfilepath)
btmpl.execute(bbuffer, somevariables)

假设我对这两个文件使用公共 var(不是来自“somevariables”golang var),我是否有办法像 helm 一样在单独的文件中声明它?

{{ define myvar }}
the-var
{{ end }}

然后保留一种可以在 atmpl 和 btmpl 中重复使用的上下文:

{{ template myVar .}}

解决方案


使用通用定义创建第三个文件:

{{define "myvar"}}
the-var
{{end}}

与其他文件一起解析该文件:

atmpl, _ := template.parsefiles(afilepath, commonfilepath)

btmpl, _ := template.parsefiles(bfilepath, commonfilepath)

在两个模板中使用“myvar”,如下所示:

{{template "myVar" .}}

好了,本文到此结束,带大家了解了《在 golang 模板中传递变量》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>