欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-11-15 21:48:04
本文实例分析了go语言多值替换的html模板用法。分享给大家供大家参考。具体如下: 这里通过两种方式提供基于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语言程序设计有所帮助。