温馨提示×

怎么用golang template指定下标数组

小亿
127
2023-11-10 03:04:20
栏目: 编程语言

要在Go语言的模板中指定一个数组的下标,可以使用index函数。下面是一个示例代码:

package main

import (
	"os"
	"text/template"
)

func main() {
	tmpl := template.Must(template.New("").Funcs(template.FuncMap{
		"index": func(arr []string, i int) string {
			if i >= 0 && i < len(arr) {
				return arr[i]
			}
			return ""
		},
	}).Parse(`{{ index .Arr 2 }}`))

	data := struct {
		Arr []string
	}{
		Arr: []string{"a", "b", "c"},
	}

	err := tmpl.Execute(os.Stdout, data)
	if err != nil {
		panic(err)
	}
}

在上面的代码中,我们定义了一个名为index的自定义函数,它接收一个字符串数组和一个整数参数,返回指定下标的数组元素。在模板中使用{{ index .Arr 2 }}语法来调用这个函数,并指定Arr数组的下标为2。运行代码,输出结果为c

0