html - 如何将 Go HTML 模板嵌入到代码中?

标签 html templates go

我有一组模板作为文件,比如 base.htmllogin.htmlprofile.htmlheader .html 等等。它们按文件夹结构。

在开发期间将它们作为单独的文件很好,但是当我部署应用程序时,我希望将它们全部嵌入为字符串或解析和编译的模板,以便像往常一样从代码中使用。

我应该如何更好地将这些模板制作成 Go 代码?这样我就不必在生产中拥有 templates 文件夹,而是将所有内容都放在单个可执行文件中?

最佳答案

Go 1.16 将有官方的 “embed” 包,以下内容将成为可能( 如果您在 2021 年 2 月之后阅读本文,则可能):

//go:embed "mytemplate.tmpl"
var myTemplate string

此代码在编译时嵌入 mytemplate.html 并且它可以作为字符串使用(或者作为 []byte 或作为文件系统,如果您愿意的话)。无需第 3 方工具或库。

关于html - 如何将 Go HTML 模板嵌入到代码中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41723876/

相关文章:

html - 中心固定宽度元素,div 填充额外空间

JavaScript HTML 从 JavaScript 代码更改 HTML 元素

c++ - 为什么无法在可变参数模板中将尾随模板参数指定为默认值?

c++ - 模板类特化

html - 如何在 CSS 中将页脚放在页面底部?

php - 如何使用此代码连接 sql、html 和 php

c++ - 避免为不同的字符数组大小进行模板实例化

algorithm - 如何将 StringText 转换为二进制并使用 Go 进行反向转换

email - 如何解决从网站发送的电子邮件中的可疑链接错误

pointers - 在 Golang 中取消引用 map 索引