我不知道是我犯了什么错误还是遇到了golang的错误。以下代码无法正常工作并返回:
测试
package main
import (
"log"
"os"
"text/template"
)
func main() {
t1 := template.New("name")
t2 := template.Must(t1.ParseFiles("test.tmpl"))
err := t2.Execute(os.Stdout, nil)
if err != nil {
log.Println("error: ", err)
}
}
Run Code Online (Sandbox Code Playgroud)
测试文件
{{"\"test ok\""}}
Run Code Online (Sandbox Code Playgroud)
我发现了问题。根据包文档,模板通常应具有文件名称之一的名称。
更正的代码
package main
import (
"log"
"os"
"text/template"
)
func main() {
t1 := template.New("test.tmpl")
t2 := template.Must(t1.ParseFiles("test.tmpl"))
err := t2.Execute(os.Stdout, nil)
if err != nil {
log.Println("error: ", err)
}
}
Run Code Online (Sandbox Code Playgroud)