Mengakses Elemen Terakhir Slice dalam Templat Go
Mendapatkan semula elemen terakhir kepingan dalam templat Go boleh menjadi mencabar kerana pengindeksan berasaskan sifar yang digunakan dalam templat. Walaupun mudah untuk mendapatkan saiz kepingan dan mengindeks elemen individu, merujuk elemen terakhir menggunakan saiz sahaja membawa kepada ralat "di luar julat".
Menggunakan FuncMaps untuk Operasi Aritmetik
Untuk mengatasi had ini tanpa menggunakan definisi fungsi tersuai, seseorang boleh memanfaatkan FuncMaps untuk memperkenalkan fungsi tersuai ke dalam proses pemaparan templat. Sebagai contoh, fungsi "tambah" boleh ditakrifkan seperti berikut:
t := template.Must(template.New("").Funcs(template.FuncMap{ "add": func(a, b int) int { return a + b }, }).Parse(theTemplate)
Menggunakan Fungsi Tersuai
Dengan fungsi "tambah" yang tersedia dalam FuncMap, anda boleh mengakses elemen terakhir kepingan seperti ini:
{{index .Things (add $size -1)}}
Ungkapan ini berkesan menolak satu daripada saiz kepingan, membolehkan anda mengindeks elemen terakhir tanpa mencetuskan ralat di luar julat.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Elemen Terakhir Go Slice dalam Templat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!