Quick actions

cmd+k|ctrl+k

Navigation

Languages

Text and HTML templates / Methods as data / Essential Go

Snippet info

Language

Go

Visibility

public

Author

kkowalczyk

Created

2019-03-26T10:16:25Z

Updated

2019-03-26T10:16:25Z

package main

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

var tmplStr = `Data from a field: '{{ .Field }}'
Data from a method: '{{ .Method }}'
`

type Data struct {
	Field int
}

func (d Data) Method() string {
	return "data from a method"
}

func main() {
	t := template.New("method")
	t, err := t.Parse(tmplStr)
	if err != nil {
		log.Fatalf("template.Parse() failed with '%s'\n", err)
	}

	data := Data{
		Field: 5,
	}

	err = t.Execute(os.Stdout, data)
	if err != nil {
		log.Fatalf("t.Execute() failed with '%s'\n", err)
	}
}
INFO