// Package web 通过 go:embed 持有前端构建产物(Vue3 dist)。 // dist 目录由 Dockerfile 的 node 构建阶段生成到本目录后再编译 Go, // 因此最终二进制自带前端,无需独立 Nginx 容器。 package web import ( "embed" "io/fs" ) //go:embed all:dist var distFS embed.FS // DistFS 返回以 dist 内容为根的只读文件系统。 func DistFS() (fs.FS, error) { return fs.Sub(distFS, "dist") } // IndexHTML 返回前端入口页字节。 func IndexHTML() ([]byte, error) { return distFS.ReadFile("dist/index.html") }