如何使用索引迭代 HTML 模板中的并行数组
本文解决了迭代并行数组(大小相等)的困难在 HTML 模板中。具体来说,如何利用范围块内的索引函数来实现此目的。
索引函数是预定义的全局模板函数,它根据提供的索引从映射、切片或数组中检索项目。该函数允许在模板内的数据结构内进行复杂的导航。
在迭代并行数组的上下文中,我们需要注意使用索引函数的上下文。默认情况下,范围块内的点 (${}) 指的是正在迭代的数组中的当前元素。但是,要访问另一个数组中的数据,我们需要恢复到原始点,它表示传递给 Execute 函数的数据参数。
因此,解决方案是使用原始点 ($)而不是索引表达式中的点:
{{range $i, $e := .First}}{{$e}} - {{index $.Second $i}}{{end}}
此调整确保索引函数引用原始数据参数,从而允许对数组进行并行迭代。
解决此问题的另一种方法是定义一个名为 zip 的自定义模板函数,它接受多个切片作为输入并返回值对的切片。这样的函数将简化模板代码,并可能在其他上下文中重用。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3