服务器之家

服务器之家 > 正文

Go语言多值替换的HTML模板实例分析

时间:2020-04-19 12:07     来源/作者:pythoner

本文实例分析了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语言程序设计有所帮助。

相关文章

热门资讯

沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部