Bagaimana untuk Menghantar Data Antara Templat dalam Pakej teks/templat Go?

DDD
Lepaskan: 2024-10-27 02:59:03
asal
715 orang telah melayarinya

How to Pass Data Between Templates in Go's text/template Package?

Melalui Data Antara Templat

Keperluan biasa dalam pemaparan templat ialah keupayaan untuk menghantar data antara templat. Dalam pakej teks/templat Go, ini boleh dicapai menggunakan gabungan fungsi dan teknik pemanggilan templat.

Untuk menghantar nombor mudah sebagai argumen tambahan kepada templat bersarang, anda boleh menentukan fungsi yang menggabungkan argumennya menjadi nilai keping tunggal. Fungsi ini kemudiannya boleh didaftarkan dan digunakan dalam pemanggilan templat.

Berikut ialah contoh:

<code class="go">func args(vs ...interface{}) []interface{} {
    return vs
}</code>
Salin selepas log masuk
<code class="go">t, err := template.New("t").Funcs(template.FuncMap{"args": args}).Parse(...)</code>
Salin selepas log masuk

Dalam templat index.html, gunakan fungsi args untuk menggabungkan arus data dengan hujah tambahan:

<code class="html">{{ template "image_row" args . 5 }}</code>
Salin selepas log masuk

Dalam templat image_row.html, akses argumen menggunakan fungsi terbina dalam indeks:

<code class="html">{{ define "image_row" }}
   To stuff here {{ index . 0 }} {{ index . 1 }}
{{ end }}</code>
Salin selepas log masuk

Pendekatan ini membolehkan anda menghantar data sewenang-wenangnya antara templat dan membina komponen templat yang lebih kompleks dan boleh diguna semula.

Atas ialah kandungan terperinci Bagaimana untuk Menghantar Data Antara Templat dalam Pakej teks/templat Go?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan