Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah saya boleh mengulangi tatasusunan selari dalam templat HTML menggunakan julat dan fungsi indeks?

Bagaimanakah saya boleh mengulangi tatasusunan selari dalam templat HTML menggunakan julat dan fungsi indeks?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-05 01:07:02687semak imbas

How can I iterate over parallel arrays in HTML templates using range and the index function?

Menggunakan indeks dalam julat Gelung untuk Lelaran ke atas Tatasusunan Selari dalam Templat HTML

Dalam templat HTML, fungsi julat membenarkan lelaran ke atas tatasusunan atau kepingan, membolehkan penyenaraian elemen individu dalam struktur. Apabila bekerja dengan berbilang tatasusunan selari, selalunya perlu untuk mengulanginya secara serentak, memetakan elemen daripada setiap tatasusunan.

Walau bagaimanapun, pendekatan berikut tidak berfungsi seperti yang diharapkan:

{{range $i, $e := .First}}$e - {{index .Second $i}}{{end}}

Ini gagal kerana titik (.) dalam blok julat merujuk kepada elemen semasa yang diulang, iaitu tatasusunan kedua. Pendekatan yang betul melibatkan akses kepada nilai titik asal, yang mewakili keseluruhan struktur data yang dihantar ke templat.

Fungsi indeks, fungsi templat yang dipratentukan, membolehkan operasi pengindeksan pada peta, kepingan dan tatasusunan. Menggunakannya, pendekatan yang betul adalah seperti berikut:

{{range $i, $e := .First}}$e - {{index $.Second $i}}{{end}}

Variasi ini menggunakan rujukan titik dengan betul. $ di hadapan Second mewakili nilai titik asal, membolehkan pengindeksan tatasusunan kedua menggunakan indeks semasa.

Walau bagaimanapun, penyelesaian yang lebih ringkas ialah mencipta fungsi templat tersuai bernama zip yang menerima berbilang kepingan dan mengembalikan sekeping tupel yang mengandungi unsur-unsur daripada setiap keping input. Pendekatan ini menyediakan templat yang lebih bersih dan memudahkan penggunaan semula:

{{range zip .First .Second}}
  {{$a := $._1}}
  {{$b := $._2}}
  {{printf "%v - %v" $a $b}}
{{end}}

Atas ialah kandungan terperinci Bagaimanakah saya boleh mengulangi tatasusunan selari dalam templat HTML menggunakan julat dan fungsi indeks?. 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