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
Lepaskan: 2024-12-19 03:32:21
asal
121 orang telah melayarinya

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
}
Salin selepas log masuk
  1. Daftar fungsi ini dengan templat:
t := template.Must(template.New("").Funcs(template.FuncMap{
    "execTempl": execTempl,
}).Parse(tmpl))
Salin selepas log masuk
  1. Gunakan fungsi berdaftar untuk menangkap output templat bernama:
{{$var := execTempl "my-template"}}
Salin selepas log masuk

Contoh Templat:

const tmpl = `{{define "my-template"}}my-template content{{end}}
See result:
{{$var := execTempl "my-template"}}
{{$var}}
`
Salin selepas log masuk

Output:

See result:

my-template content
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan