您应该将变量作为a
template.HTML而不是作为a 传递
string:
tpl := template.Must(template.New("main").Parse(`{{define "T"}}{{.Html}}{{.String}}{{end}}`))tplVars := map[string]interface{} { "Html": template.HTML("<p>Paragraph</p>"), "String": "<p>Paragraph</p>",}tpl.ExecuteTemplate(os.Stdout, "T", tplVars)//OUTPUT: <p>Paragraph</p><p>Paragraph</p>
https://play.golang.org/p/QKKpQJ7gIs
如您所见,以a传递的变量
template.HTML不会被转义,而是以a传递的变量是转义的
string。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)