다음 코드를 고려하세요.
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!