Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Menangkap Output Templat Golang ke dalam Pembolehubah?

Bagaimana untuk Menangkap Output Templat Golang ke dalam Pembolehubah?

Susan Sarandon
Susan Sarandonasal
2024-12-19 03:32:21123semak imbas

How to Capture Golang Template Output into a Variable?

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:

  1. Daftar fungsi yang melaksanakan templat bernama dan simpan menghasilkan penimbal:
func execTempl(name string) (string, error) {
    buf := &bytes.Buffer{}
    err := t.ExecuteTemplate(buf, name, nil)
    return buf.String(), err
}
  1. Daftar fungsi ini dengan templat:
t := template.Must(template.New("").Funcs(template.FuncMap{
    "execTempl": execTempl,
}).Parse(tmpl))
  1. Gunakan fungsi berdaftar untuk menangkap output templat bernama:
{{$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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn