Go Gin模板渲染如何实现高效处理?
摘要:go 模版渲染 templates模板 创建一个templates模板目录 # 创建模板目录 mkdir templates # 在 templates 创建 index.html 文件 <!--index.html-
go 模版渲染
templates模板
创建一个templates模板目录
# 创建模板目录
mkdir templates
# 在 templates 创建 index.html 文件
<!--index.html-->
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1 style="color: blueviolet">{{.title }}</h1>
</body>
</html>
服务中加载 templates模板
package main
import "github.com/gin-gonic/gin"
func main() {
router := gin.Default()
// 加载 templates下所有的模板文件
router.LoadHTMLGlob("templates/*")
router.GET("/ping", func(c *gin.Context) {
c.HTML(200, "index.html", gin.H{
"title": "Hello, Gin!",
})
})
router.Run(":8080") // 启动服务
}
静态文件处理
创建 static 静态文件夹,在项目根路下
# 在项目根路径下 创建 static
mkdir static
# 创建 css 和 js 的 文件目录
mkdir -p {css,js}
在 static/css 和 static/js 目录下分别上传 css 文件和 js文件
重新编写 templates 下的 index.html
<!--index.html-->
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{.title}}</title>
<!-- 引入本地 Bootstrap CSS -->
<link href="/static/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<!-- 导航栏 -->
<nav class="navbar navbar-expand-lg navbar-light bg-light shadow-sm">
<div class="container">
<a class="navbar-brand" href="#">{{.title}}</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav"
aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav ms-auto">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">首
