go模板绑定常量数组值

时间:2016-07-14 01:42:04

标签: arrays go go-templates

我是新手去模板;我可以知道如何使用一些常量值绑定数组

我曾尝试过以下选项;但没有奏效

{{ $groups := {"a", "b", "c"} }}
{{ $groups := ["a", "b", "c"] }}
{{ $groups := ("a", "b", "c") }}

1 个答案:

答案 0 :(得分:3)

模板不支持数组或切片的复合文字语法。

您可以使用https://github.com/OData/WebApi/blob/master/OData/test/E2ETest/WebStack.QA.Test.OData/DollarLevels/DollarLevelsController.cs#L62-L63将其可变参数作为切片返回。

这里的功能是:

func slice(v ...interface{}) []interface{} {
  return v
}

在解析之前将该函数添加到模板的地图中:

 template.New("").Funcs(template.FuncMap{"slice": slice}).Parse(data)

像这样使用:

  {{$groups := slice "a" "b" "c"}}

custom template function