Heim >Backend-Entwicklung >Golang >Wie rufe ich eine Go-Methode aus einer Vorlage heraus auf?
Beachten Sie den folgenden Code:
type Person struct { Name string } func (p *Person) Label() string { return "This is " + p.Name }
Um diese Methode in einer HTML-Vorlage zu verwenden, würden Sie folgendes tun: Erwarten Sie normalerweise eine Syntax ähnlich der folgenden:
{{ .Label() }}
In Go-Vorlagen können die Klammern jedoch sein weggelassen:
{{ .Label }}
Zum Beispiel mit dem folgenden Code:
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")) }
Die Vorlage generiert die Ausgabe:
This is Bob
Gemäß der Go-Vorlagendokumentation können Sie jede Methode aufrufen, die einen einzelnen Wert oder zwei Werte zurückgibt, wobei der zweite Wert ein Fehler ist. Wenn die Methode einen Fehler zurückgibt, gibt Execute den Fehler zurück und stoppt die Ausführung der Vorlage.
Das obige ist der detaillierte Inhalt vonWie rufe ich eine Go-Methode aus einer Vorlage heraus auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!