为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 html/template 中范围内的索引来遍历并行数组?

如何使用 html/template 中范围内的索引来遍历并行数组?

Go
慕盖茨4494581 2021-06-03 18:21:02
我正在执行一个带有 2 个并行数组(相同大小)的模板,我想并行列出两个数组中的项目,如何在范围内使用索引?这显然不起作用:{{range $i, $e := .First}}$e - {{index .Second $i}}{{end}}
查看完整描述

1 回答

?
狐的传说

TA贡献1804条经验 获得超3个赞

预定义的全局模板函数之一index.

index 返回通过以下参数对其第一个参数进行索引的结果。因此index x 1 2 3,在 Go 语法中, x[1][2][3]. 每个索引项必须是mapslicearray

所以你是在正确的轨道上。唯一的问题是您没有考虑dotrange块内重新分配的事实。

所以你需要回到原来的点,为此我们有以下内容

当执行开始时,$设置为传递给 Execute 的数据参数,即 dot 的起始值。

因此(假设您的模板中没有其他内容)您应该能够:

{{range $i, $e := .First}}$e - {{index $.Second $i}}{{end}}

不过就我个人而言,我会创建一个模板函数zip,该函数接受多个切片并返回每对值的一个切片。它会在您的模板中看起来更干净,并且可能会在某处重复使用。


查看完整回答
反对 回复 2021-06-07
  • 1 回答
  • 0 关注
  • 295 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信