Memasukkan HTML ke dalam Templat GoLang
Apabila mengisi templat HTML dalam GoLang, menghadapi isu dengan aksara HTML yang dilepaskan dan ditambah secara tidak betul bukanlah perkara biasa. Untuk menangani perkara ini, adalah penting untuk memahami perbezaan antara menghantar data sebagai rentetan dan sebagai templat.HTML.
Secara lalai, templat GoLang akan terlepas daripada aksara HTML apabila data dihantar sebagai rentetan. Ini menghasilkan output yang tidak dijangka yang anda nyatakan. Untuk mengelakkan ini, pendekatan yang betul adalah dengan menghantar kandungan HTML sebagai templat.HTML. Jenis data ini direka khusus untuk mengendalikan kandungan HTML tanpa melarikan diri.
Berikut ialah contoh cara menggunakan templat.HTML:
<code class="go">package main import ( "html/template" "os" ) func main() { 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) }</code>
Dengan menghantar kandungan HTML sebagai templat.HTML, output akan diberikan seperti yang dimaksudkan, dengan aksara HTML dipaparkan dengan betul. Pendekatan ini memastikan bahawa templat HTML anda diisi dengan tepat tanpa sebarang pelepasan yang tidak diingini.
Atas ialah kandungan terperinci Bagaimana untuk Mencegah HTML Melarikan Diri dalam Templat GoLang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!