这是一个创建于 4007 天前的主题,其中的信息可能已经有所发展或是发生改变。
h.html
<p>{{.H}}</p>
c.html
{{template "h.html"}}
<p>{{.C}}</p>
{{template "f.html"}}
f.html
<p>{{.F}}</p>
type data_t struct {
H string
C string
F string
}
t := template.ParseFiles("h.html", "c.html", "f.html") //加载三个
index := data_t{H: "头", C: "内容", F: "尾"}
t.ExecuteTemplate(rw, "c.html", index)
为什么只替换了C , H和F没替换, c.html不是包含了 f.html和h.html吗?按理说也会自动替换啊。
而
把c.html改成
c.html
<p>{{.C}}</p>
然后
t.ExecuteTemplate(rw, "h.html", index)
t.ExecuteTemplate(rw, "c.html", index)
t.ExecuteTemplate(rw, "f.html", index)
这样连着就可以, 这样未免也太挫了, 那上面的包含还有意义吗? 请教有没有更好的办法。。。
6 条回复 • 1970-01-01 08:00:00 +08:00
|
|
1
xdeng 2013-11-26 10:23:39 +08:00
|
|
|
2
xdeng 2013-11-26 10:23:51 +08:00
|
|
|
3
gihnius 2013-11-26 10:35:46 +08:00 1
c.html {{template "h.html"}} <p>{{.C}}</p> {{template "f.html"}}
改成
c.html {{template "h.html" .}} <p>{{.C}}</p> {{template "f.html" .}}
才能将数据传过去
|
|
|
4
xdeng 2013-11-26 10:49:21 +08:00
@ gihnius 非常感谢! 还真是这样。。。 我找的go资料很少
|
|
|
5
xdeng 2013-11-26 10:50:16 +08:00
@ gihnius 你能有 好的 全面一点的 资料分享一下么! 官方的太不全了
|