Menangkap Output Templat Golang ke dalam Pembolehubah
Dalam templat Golang, percubaan untuk menangkap output templat lain terus ke dalam pembolehubah boleh menyebabkan dalam kesilapan. Untuk mencapai fungsi ini, fungsi tersuai mesti didaftarkan untuk menangkap output.
Penyelesaian:
func execTempl(name string) (string, error) { buf := &bytes.Buffer{} err := t.ExecuteTemplate(buf, name, nil) return buf.String(), err }
t := template.Must(template.New("").Funcs(template.FuncMap{ "execTempl": execTempl, }).Parse(tmpl))
{{$var := execTempl "my-template"}}
Contoh Templat:
const tmpl = `{{define "my-template"}}my-template content{{end}} See result: {{$var := execTempl "my-template"}} {{$var}} `
Output:
See result: my-template content
Pendekatan ini membolehkan anda melaksanakan templat bernama dan menyimpan outputnya dalam pembolehubah templat. Anda kemudian boleh menggunakan pembolehubah ini untuk menghantar ke fungsi lain atau memasukkan dalam output templat.
Atas ialah kandungan terperinci Bagaimana untuk Menangkap Output Templat Golang ke dalam Pembolehubah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!