Go 使用模板

今天对 Go 使用模板来做下练习,并做下记录。

创建模板

模板使用的是系统 html/template 这个包,那么我们直接导入,进行测试。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package main

import (
"log"
"os"
"html/template"
)

func main() {

const templ = `Hello World!!!`
test, err := template.New("test").Parse(templ)
if err != nil {
log.Fatal(err)
}
if errors := test.Execute(os.Stdout, nil); errors != nil {
log.Fatal(err)
}
}

传递变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
package main

import (
"log"
"os"
"html/template"
)

func main() {

const templ = `Hello World!!! {{.}}`
test, err := template.New("test").Parse(templ)
if err != nil {
log.Fatal(err)
}
if errors := test.Execute(os.Stdout, "Test Go"); errors != nil {
log.Fatal(err)
}
}

使用多个变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package main

import (
"log"
"os"
"html/template"
)

func main() {

const templ = `Title:{{.title}}
Content: {{.content}}`
test, err := template.New("test").Parse(templ)
if err != nil {
log.Fatal(err)
}
data := make(map[string]interface{})
data["title"] = "this is title"
data["content"] = "content";
if errors := test.Execute(os.Stdout, data); errors != nil {
log.Fatal(err)
}
}

©版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 & 作者信息

Happy Coding

坚持原创技术分享,您的支持将鼓励我继续创作!
Flyertutor WeChat Pay

WeChat Pay

Flyertutor Alipay

Alipay