Bagaimana untuk Mengakses Nilai Indeks Pertama Tatasusunan dalam Templat Go?

Susan Sarandon
Lepaskan: 2024-11-07 06:15:03
asal
235 orang telah melayarinya

How to Access the Value of the First Index of an Array in Go Templates?

Mengakses Nilai Indeks Pertama Tatasusunan dalam Templat Go

Apabila bekerja dengan templat HTML dalam Go, anda mungkin menghadapi cabaran untuk mengakses nilai indeks pertama tatasusunan yang dibenamkan dalam templat. Pertimbangkan kod templat berikut:

<div>Foobar {{ index .Doc.Users 0 }}</div>
Salin selepas log masuk

Di sini, anda menyasarkan untuk mendapatkan nilai medan "Nama" untuk elemen pertama dalam kepingan "Doc.Users". Walau bagaimanapun, beberapa percubaan menggunakan sintaks berbeza tidak berjaya.

Sintaks yang betul untuk mendapatkan semula medan "Nama" bagi elemen pertama dalam tatasusunan "Doc.Users" ialah:

<div>Foobar {{ (index .Doc.Users 0).Name }}</div>
Salin selepas log masuk

Untuk memahami sintaks ini, mari kita pecahkan:

  • index .Doc.Users 0: Bahagian ini mendapatkan semula elemen pertama daripada hirisan "Doc.Users".
  • (index . Doc.Users 0): Ini menandakan hasil ungkapan sebelumnya, menganggapnya sebagai nilai tunggal.
  • .Nama: Pemilih ini mengakses medan "Nama" bagi nilai yang diperoleh daripada ungkapan sebelumnya.

Dengan mengumpulkan ungkapan dan menggunakan pemilih, anda boleh mengakses medan "Nama" yang dikehendaki dengan berkesan.

Berikut ialah contoh kod yang boleh anda jalankan untuk menguji penyelesaian ini:

package main

import (
    "fmt"
    "html/template"
    "os"
)

type User struct {
    Name  string
    Email string
}

func main() {
    t := template.Must(template.New("").Parse(`
<div>Foobar {{ (index .Doc.Users 0).Name }}</div>
`))

    m := map[string]interface{}{
        "Doc": map[string]interface{}{
            "Users": []User{
                {Name: "Bob", Email: "[email protected]"},
                {Name: "Alice", Email: "[email protected]"},
            },
        },
    }

    fmt.Println(t.Execute(os.Stdout, m))
}
Salin selepas log masuk

Kod ini akan menghasilkan output berikut, menunjukkan capaian yang berjaya kepada medan "Nama" pengguna pertama dalam kepingan "Doc.Users":

<div>Foobar Bob</div>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Nilai Indeks Pertama Tatasusunan dalam 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan