Gin框架靜態文件處理


Gin框架靜態文件處理

一、靜態文件處理

當我們渲染的HTML文件中引用了靜態文件時,我們只需要按照以下方式在渲染頁面前調用gin.Static方法即可。

func main() {
	r := gin.Default()
	r.Static("/static", "./static")
	r.LoadHTMLGlob("templates/**/*")
   // ...
	r.Run(":8080")
}
package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
	// 加載靜態文件
	r.Static("/css", "../statics")

	r.LoadHTMLFiles("../templates/index.tmpl")

	r.GET("/index/css", func(c *gin.Context) {
		c.HTML(http.StatusOK, "index.tmpl", gin.H{
			// H is a shortcut for map[string]interface{}
			//type H map[string]interface{}
			// 渲染模板
			"title": "gin渲染模板",
		})
	})

	r.Run(":9999")
}

模板

# index.css
body{
    background-color: #ff002f;
}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    {{/*    引用css靜態文件*/}}
    <link rel="stylesheet" href="/css/index.css">
    <title>users/index</title>
</head>
<body>
{{.title}}
</body>
</html>

image-20211115222531000

image-20211115223150948

二、script文件處理

package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
	// 加載靜態文件
	r.Static("/css", "../statics")

	r.LoadHTMLFiles("../templates/index.tmpl")

	r.GET("/index/css", func(c *gin.Context) {
		c.HTML(http.StatusOK, "index.tmpl", gin.H{
			// H is a shortcut for map[string]interface{}
			//type H map[string]interface{}
			// 渲染模板
			"title": "gin渲染模板",
		})
	})

	r.Run(":9999")
}

模板

// index.js文件
alert("js渲染")
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    {{/*    引用css靜態文件*/}}
    <link rel="stylesheet" href="/css/index.css">
    <title>users/index</title>
</head>
<body>
{{.title}}
<script src="/css/index.js"></script>
</body>
</html>

image-20211115223344428

https://sc.chinaz.com/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM