go – 在编译时解析模板

在我的理解中,go模板在运行时从给定的源解析,以获得类型template.Template的编译版本.然后,对某些数据执行编译版本以进行实际模板化.

但后来我想知道:是否可以在编译时解析模板?

最佳答案
只需将它们设为全局变量like this.您仍将在运行时解析模板,但它会立即解析,因此如果无法正确解析二进制文件,则一旦运行它就会失败.

package main

import (
    "fmt"
    "text/template"
)

var t = template.Must(template.New("name").Parse("text"))

func main() {
    fmt.Println("Template", t)
}

转载注明原文:go – 在编译时解析模板 - 代码日志