为了账号安全,请及时绑定邮箱和手机立即绑定

在 1 页中使用具有不同参数/变量的相同模板

在 1 页中使用具有不同参数/变量的相同模板

Go
呼如林 2022-06-13 14:58:12
我正在为我的网络应用程序使用 Go gin gonic。如何在 1 页中多次使用相同的模板文件,并将不同的变量传递给模板。段.tmpl{{ define "segment" }}    <div>{{ .Variable }}</div>{{ end }}布局.tmpl<!DOCTYPE HTML><html><body>    {{ template "segment . }} #with a variable 1    {{ template "segment . }} #with different variable    {{ template "segment . }} #another same template with another </body></html>main.gor.GET("/home/", func(c *gin.Context) {      tmpl := template.Must(template.ParseFiles("templates/layout.tmpl", "templates/product_add.tmpl", "templates/segment.tmpl")    r.SetHTMLTemplate(tmpl)    c.HTML(200, "layout", gin.H {        "Variable1": "var1",        "variable2": "var2",    })}如何在“主页”页面中多次使用 segment.tmpl 并将不同类型的变量传递给 segment.tmpl?我到处搜索,一无所获,最接近的是template.Clone,但仍然找不到它的任何例子。
查看完整描述

1 回答

?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

您可以将任何值作为“管道”传递给模板,它不必是“点”,即您可以传递函数调用的结果,或者在这种情况下,是访问映射值的结果.


{{ template "segment" .Variable1 }}

然后在模板"segment"中,您可以使用点来引用管道,即{{ . }}.


段.tmpl


{{ define "segment" }}

    <div>{{ . }}</div>

{{ end }}

布局.tmpl


<!DOCTYPE HTML>

<html>

<body>

    {{ template "segment .Variable1 }}

    {{ template "segment .Variable2 }}

    {{ template "segment .AnotherVariable }}

</body>

</html>


查看完整回答
反对 回复 2022-06-13
  • 1 回答
  • 0 关注
  • 112 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号