package main import ( "embed" "net/http" "os" "tplate/src/page" "github.com/rs/zerolog" "github.com/rs/zerolog/log" ) // embedWebFS 打包了 web 目录下的全部文件 //go:embed web var embedWebFS embed.FS func main() { // 修改 zerolog 的默认 logger log.Logger = zerolog.New(zerolog.ConsoleWriter{ Out: os.Stdout, TimeFormat: "15:04:05", // TimeFormat: "2006/01/02 15:04:05", }).With().Timestamp().Logger() var buildMode bool if len(os.Args) > 1 && os.Args[1] == "build" { buildMode = true } p := page.New(&page.NewPageParams{ BuildMode: buildMode, EmbedFS: embedWebFS, }) if buildMode { p.BuildHandler(len(os.Args) > 2 && os.Args[2] == "--keep") } else { http.HandleFunc("/", p.ServerHandler) log.Info(). Str("URL", "http://localhost:8080"). Msg("Debug server started") err := http.ListenAndServe(":8080", nil) log.Fatal().Err(err).Msg("Debug server stopped") } }