在go模板中定义数组变量的正确语法是什么? (这里是一个
HTML模板).这是我尝试过的:
- {{define "template"}}
- {{ $x:=[]int{0,1,2} }}{{$x[0]}}
- {{end}}
谢谢.
没有内置的方法可以实现您想要实现的目标.有关您可以使用参数和管道执行的操作,请参阅
arguments.
但您可以轻松定义自己的功能以实现目标:
- package main
- import (
- "html/template"
- "os"
- )
- func main() {
- tmpl := `
- {{ $slice := mkSlice "a" 5 "b" }}
- {{ range $slice }}
- {{ . }}
- {{ end }}
- `
- funcMap := map[string]interface{}{"mkSlice": mkSlice}
- t := template.New("demo").Funcs(template.FuncMap(funcMap))
- template.Must(t.Parse(tmpl))
- t.ExecuteTemplate(os.Stdout,"demo",nil)
- }
- func mkSlice(args ...interface{}) []interface{} {
- return args
- }