52 lines
829 B
Go
52 lines
829 B
Go
package main
|
|
|
|
import (
|
|
"log"
|
|
"os"
|
|
//"text/template"
|
|
"html/template"
|
|
)
|
|
|
|
type Data struct {
|
|
MyTitle string
|
|
Lst []int
|
|
Thing interface{}
|
|
}
|
|
|
|
func main() {
|
|
var err error
|
|
|
|
//tpl, err := template.ParseFiles("tpl.html")
|
|
tpl := template.New("tpl.html")
|
|
tpl = tpl.Funcs(template.FuncMap{
|
|
"myFunc": func(s string) string {
|
|
return s + s
|
|
},
|
|
})
|
|
|
|
tpl, err = tpl.ParseFiles("tpl.html")
|
|
if err != nil {
|
|
log.Fatalln(err)
|
|
}
|
|
/*
|
|
data := map[string]string{
|
|
"myTitle": "plop",
|
|
}
|
|
data := []int{1, 2, 3}
|
|
data := map[string]interface{}{
|
|
"myTitle": "plop",
|
|
"lst": []int{1, 2, 3},
|
|
}
|
|
*/
|
|
data := Data{
|
|
//"plop",
|
|
"<script>alert('hi!')</script>",
|
|
[]int{1, 2, 3},
|
|
template.HTML("<script>alert('hi!')</script>"),
|
|
}
|
|
err = tpl.Execute(os.Stdout, data)
|
|
if err != nil {
|
|
log.Fatalln(err)
|
|
}
|
|
}
|