Go语言多值替换的HTML模板实例分析
本文向大家介绍Go语言多值替换的HTML模板实例分析,包括了Go语言多值替换的HTML模板实例分析的使用技巧和注意事项,需要的朋友参考一下
本文实例分析了Go语言多值替换的HTML模板用法。分享给大家供大家参考。具体如下:
这里通过两种方式提供基于HTML模板的多变量值替换。另外附加一个数组迭代的示例。
传入map实现多值替换
package main import ( "html/template" "os" ) func main() { t, _ := template.New("demo").Parse(`{{define "T"}}Hello, {{.Username}}! Main Page: [{{.MainPage}}]{{end}}`) args1 := map[string]string {"Username": "Hypermind", "MainPage": "http://hypermind.com.cn/go"} _ = t.ExecuteTemplate(os.Stdout, "T", args1) }
传入自定义结构实现多值替换
package main import ( "html/template" "os" ) type Info struct{ Username string MainPage string } func main() { t, _ := template.New("demo").Parse(`{{define "T"}}Hello, {{.Username}}! Main Page: [{{.MainPage}}]{{end}}`) args2 := Info{Username: "Hypermind", MainPage: "http://hypermind.com.cn/go"} _ = t.ExecuteTemplate(os.Stdout, "T", args2) }
二维数组的迭代显示
package main import ( "html/template" "os" ) type Matrix struct { Array [9][9]int } func main() { tmpl, _ := template.New("example").Parse(` {{ $a := .Array }} {{ range $a }}{{ $elem := . }}|{{ range $elem }}{{ printf "%d" . }}{{ end}}| {{end}}`) tmpl.Execute(os.Stdout, matrix) }
希望本文所述对大家的Go语言程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#yiidian.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。