除range循环外,能否在Revel Template中直接访问列表元素?
在Revel模板中直接访问列表元素的方法
Revel模板基于Go标准库的html/template引擎,你可以使用内置的index函数直接访问列表指定索引的元素,而非{{ .foo[2] }}这类语法。
正确的写法示例:
{{ index .foo 2 }}
补充说明
index函数支持对切片、数组、映射等类型做索引访问,第一个参数是目标集合,后续参数为索引(多维结构可传入多个索引)。比如取.foo的第一个元素,写法是{{ index .foo 0 }}- 你提到的两种
range遍历方式依然适用,和index函数是互补场景:- 基础遍历写法:
{{ range .foo }} <!-- 用.访问当前遍历到的元素 --> {{ end }} - 带索引的遍历写法:
{{ range $index, $element := .foo }} <!-- 用$index和$element分别访问索引与对应元素 --> {{ end }}
index则适合直接定位到特定位置的元素。 - 基础遍历写法:
内容的提问来源于stack exchange,提问作者Michael Halim
相关产品推荐
相关产品推荐

