Go語言多值替換的HTML模板實例分析
更新時間:2015年02月28日 09:49:21 作者:pythoner
這篇文章主要介紹了Go語言多值替換的HTML模板,實例分析了Go語言多值替換與數(shù)組迭代的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例分析了Go語言多值替換的HTML模板用法。分享給大家供大家參考。具體如下:
這里通過兩種方式提供基于HTML模板的多變量值替換。另外附加一個數(shù)組迭代的示例。
傳入map實現(xiàn)多值替換
復制代碼 代碼如下:
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)
}
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)
}
傳入自定義結(jié)構(gòu)實現(xiàn)多值替換
復制代碼 代碼如下:
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)
}
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)
}
二維數(shù)組的迭代顯示
復制代碼 代碼如下:
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)
}
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語言程序設(shè)計有所幫助。
相關(guān)文章
golang 實現(xiàn)interface{}轉(zhuǎn)其他類型操作
這篇文章主要介紹了golang 實現(xiàn)interface{}轉(zhuǎn)其他類型操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12
Go語言reflect.TypeOf()和reflect.Type通過反射獲取類型信息
這篇文章主要介紹了Go語言reflect.TypeOf()和reflect.Type通過反射獲取類型信息,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-04-04

