Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewHTMLRender ¶
func NewHTMLRender(builder types.Factory, opts ...NewHTMLRenderOpt) (types.ReloadableRender, error)
NewHTMLRender 新建一个 HTML 渲染器
//go:embed views var views embed.FS var hotReload = gin.IsDebugging() // NewHTMLRender r, err := tpl.NewHTMLRender(func(context.Context) (types.TemplateManager, error) { m := html.NewTplManager() if hotReload { // 使用 os.DirFS 实时读取文件夹 return m, m.ParseWithSuffix(os.DirFS("views"), ".html") } // 使用编译时嵌入的 embed.FS 资源 return m, m.SetSubFS("views").ParseWithSuffix(views, ".html") }, tpl.WithHotReload(hotReload)) ginS.Get("/", func(c *gin.Context) { // Instance c.Render(http.StatusOK, r.Instance(c, "index.html", gin.H{})) }) ginS.Run()
func RenderToBytes ¶
RenderToString 执行一个模板 并将结果输出为字节数组
Types ¶
type NewHTMLRenderOpt ¶
type NewHTMLRenderOpt func(*newHtmlRenderOpt)
func WithHotReload ¶
func WithHotReload(hotReload bool) NewHTMLRenderOpt
WithHotReload 当需要热加载时 每次渲染都会重新解析模板. 出于性能考虑 应当仅在调试阶段开启; 正式环境如需重新解析模板 可以通过下方 Reload 方法触发.
Click to show internal directories.
Click to hide internal directories.