思路流程
1、Gin框架引用模板与Go语言原生自带的方法雷同,Gin框架使用的是LoadHTMLFiles
,原生使用template.New
等参数
2、Gin框架主要是c.HTML
中引用了gin.H
,这是一个map类型,按住ctrl键点击c.HTML
中的H
字母,可查看到的确是map类型
3、Gin框架会返回定义的map类型值到模板中,所以模板中变量写的是{{.title}}
,因为title
是Gin框架中map的键值对参数其中之一
4、当访问到/index
时,就会处理func c
函数,模板中调用了title
参数,通过map键值对找到对应值,返回Gin框架
字段给客户端
操作流程
在当前位置初始化一个mod位置
go mod init Gone
拉取gin框架代码
go get -u github.com/gin-gonic/gin
目录结构:
templates/index.tmpl
main.go
templates/index.tmpl内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
{{.title}}
</body>
</html>
main.go内容
package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
//定义一个路由
r := gin.Default()
//模板解析
r.LoadHTMLFiles("templates/index.tmpl")
//模板渲染
r.GET("/index", func(c *gin.Context) {
c.HTML(http.StatusOK, "index.tmpl", gin.H{
"title": "Gin框架",
})
})
r.Run(":9090")
}
运行程序
go run main.go
打开浏览器访问:
http://ip:9090/index