首頁 > 後端開發 > Golang > 如何從模板中呼叫 Go 方法?

如何從模板中呼叫 Go 方法?

Barbara Streisand
發布: 2024-12-08 13:30:11
原創
844 人瀏覽過

How Do I Call a Go Method from Within a Template?

從Go 範本呼叫方法

考慮以下程式碼:

type Person struct {
  Name string
}
func (p *Person) Label() string {
  return "This is " + p.Name
}
登入後複製

要在HTML 範本中使用此方法,您需要通常期望的語法類似以下:

{{ .Label() }}
登入後複製

但是,在Go模板中,括號可以省略:

{{ .Label }}
登入後複製

例如,給出以下程式碼:

package main

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

type Person string

func (p Person) Label() string {
    return "This is " + string(p)
}

func main() {
    tmpl, err := template.New("").Parse(`{{.Label}}`)
    if err != nil {
        log.Fatalf("Parse: %v", err)
    }
    tmpl.Execute(os.Stdout, Person("Bob"))
}
登入後複製

模板會產生輸出:

This is Bob
登入後複製

依照Go在模板在文件中,您可以呼叫傳回單一值或兩個值的任何方法,其中第二個值是錯誤。如果該方法傳回錯誤,Execute 將傳回錯誤並停止模板執行。

以上是如何從模板中呼叫 Go 方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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