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 }