首頁 > 後端開發 > Golang > 如何存取 Go 模板中第一個陣列元素的名稱欄位?

如何存取 Go 模板中第一個陣列元素的名稱欄位?

Mary-Kate Olsen
發布: 2024-11-07 13:35:03
原創
1076 人瀏覽過

How to Access the Name Field of the First Array Element in Go Templates?

在Go 模板中訪問第一個數組元素的.Name 字段

在HTML 模板中,你可能會遇到需要訪問的情況數組的第一個索引的值。然而,僅僅使用「索引」函數可能還不夠,尤其是在嘗試取得數組中的特定欄位時。

為了解決這個挑戰,正確的語法包括將表達式分組並應用「.Name」選擇器檢索所需的值。考慮以下範本:

<div>Foobar {{ (index .Doc.Users 0).Name }}</div>
登入後複製

在此範本中,「.Doc.Users」陣列包含帶有「Name」欄位的物件。透過將“index .Doc.Users 0”表達式分組並套用“.Name”,您可以有效地選擇第一個陣列元素的“Name”欄位。

舉個實際的例子,假設您有一個物件使用者陣列:

import "fmt"
import "os"
import "text/template"

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))
}
登入後複製

當您在Go Playground 上執行此程式碼時,您將獲得以下內容輸出:

<div>Foobar Bob</div>
登入後複製

這示範如何從Go 範本中的「.Doc.Users」陣列的第一個元素有效檢索「.Name」欄位。

以上是如何存取 Go 模板中第一個陣列元素的名稱欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板