:package: 使用版本为1.21.5

Template库

:star: emplate包实现了数据驱动的用于生成文本输出的模板。如果要生成HTML格式的输出,参见html/template包,该包提供了和本包相同的接口,但会自动将输出转化为安全的HTML格式输出,可以抵抗一些网络攻击。模板使用插值语法{{.var}} 格式;

package main

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

func main() {
    name := "tanc"
    //定义模板
    tmp := "Hello,{{.}}"
    t := template.New("test")
    parse, err := t.Parse(tmp)
    if err != nil {
        log.Fatal(err)
    }
    parse.Execute(os.Stdout, name)
}

:star: Html模板

package main

import (
    "log"
    "net/http"
    "text/template"
)

func main() {
    //使用http

    //定义
    http.HandleFunc("/index", tmpl)

    http.ListenAndServe(":8080", nil)
}

var tmpl http.HandlerFunc = func(writer http.ResponseWriter, request *http.Request) {
    files, err := template.ParseFiles("index.html")
    if err != nil {
        log.Fatal(err)
    }
    files.Execute(writer, "Hello World")
}

HTML代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
{{.}}
</body>
</html>