数组 – Golang模板:如何在变量中定义数组?

前端之家收集整理的这篇文章主要介绍了数组 – Golang模板:如何在变量中定义数组?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在go模板中定义数组变量的正确语法是什么? (这里是一个 HTML模板).这是我尝试过的:
  1. {{define "template"}}
  2. {{ $x:=[]int{0,1,2} }}{{$x[0]}}
  3. {{end}}

错误日志显示:命令中出现意外的“[”

谢谢.

没有内置的方法可以实现您想要实现的目标.有关您可以使用参数和管道执行的操作,请参阅 arguments.

但您可以轻松定义自己的功能以实现目标:

  1. package main
  2.  
  3. import (
  4. "html/template"
  5. "os"
  6. )
  7.  
  8. func main() {
  9. tmpl := `
  10. {{ $slice := mkSlice "a" 5 "b" }}
  11. {{ range $slice }}
  12. {{ . }}
  13. {{ end }}
  14. `
  15. funcMap := map[string]interface{}{"mkSlice": mkSlice}
  16. t := template.New("demo").Funcs(template.FuncMap(funcMap))
  17. template.Must(t.Parse(tmpl))
  18. t.ExecuteTemplate(os.Stdout,"demo",nil)
  19. }
  20.  
  21. func mkSlice(args ...interface{}) []interface{} {
  22. return args
  23. }

Playground.

猜你在找的Go相关文章