109 lines
1.8 KiB
Go
109 lines
1.8 KiB
Go
package static
|
|
|
|
import (
|
|
"embed"
|
|
"fmt"
|
|
"os"
|
|
)
|
|
import _ "embed"
|
|
|
|
//go:embed *.html
|
|
var pageList embed.FS
|
|
|
|
//go:embed img/*.*
|
|
var imgList embed.FS
|
|
|
|
//go:embed css/*.css
|
|
var cssList embed.FS
|
|
|
|
//go:embed js/*.js
|
|
var jsList embed.FS
|
|
|
|
var pageMap = initPageMap()
|
|
var imgMap = initImgMap()
|
|
var cssMap = initCssMap()
|
|
var jsMap = initJsMap()
|
|
|
|
func initPageMap() map[string][]byte {
|
|
list, err := pageList.ReadDir(".")
|
|
//list, err := fs.ReadDir(multiCf, ".")
|
|
if err != nil {
|
|
os.Exit(-1)
|
|
return nil
|
|
}
|
|
|
|
var dataMap = make(map[string][]byte, len(list))
|
|
for _, file := range list {
|
|
dataMap[file.Name()] = initHtml(file.Name())
|
|
}
|
|
|
|
return dataMap
|
|
}
|
|
|
|
func initImgMap() map[string][]byte {
|
|
list, err := imgList.ReadDir("img")
|
|
if err != nil {
|
|
os.Exit(-1)
|
|
return nil
|
|
}
|
|
|
|
var dataMap = make(map[string][]byte, len(list))
|
|
for _, file := range list {
|
|
//读取配置文件
|
|
data, err := imgList.ReadFile("img/" + file.Name())
|
|
if err == nil {
|
|
dataMap[file.Name()] = data
|
|
}
|
|
}
|
|
|
|
return dataMap
|
|
}
|
|
|
|
func initCssMap() map[string][]byte {
|
|
list, err := cssList.ReadDir("css")
|
|
if err != nil {
|
|
os.Exit(-1)
|
|
return nil
|
|
}
|
|
|
|
var dataMap = make(map[string][]byte, len(list))
|
|
for _, file := range list {
|
|
//读取配置文件
|
|
data, err := cssList.ReadFile("css/" + file.Name())
|
|
if err == nil {
|
|
dataMap[file.Name()] = data
|
|
}
|
|
}
|
|
|
|
return dataMap
|
|
}
|
|
|
|
func initJsMap() map[string][]byte {
|
|
list, err := jsList.ReadDir("js")
|
|
if err != nil {
|
|
os.Exit(-1)
|
|
return nil
|
|
}
|
|
|
|
var dataMap = make(map[string][]byte, len(list))
|
|
for _, file := range list {
|
|
//读取配置文件
|
|
data, err := jsList.ReadFile("js/" + file.Name())
|
|
if err == nil {
|
|
dataMap[file.Name()] = data
|
|
}
|
|
}
|
|
|
|
return dataMap
|
|
}
|
|
|
|
func initHtml(fileName string) []byte {
|
|
//读取配置文件
|
|
data, err := pageList.ReadFile(fileName)
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
|
|
return data
|
|
}
|