如何使用索引迭代HTML 模板中的平行數組
本文解決了迭代並行數組(大小相等)的困難在HTML 模板中。具體來說,如何利用範圍區塊內的索引函數來實現這一點。
索引函數是一個預先定義的全域範本函數,它根據提供的索引從映射、切片或陣列中檢索項目。此函數允許在模板內的資料結構內進行複雜的導航。
在迭代並行數組的上下文中,我們需要注意使用索引函數的上下文。預設情況下,範圍區塊內的點 (${}) 指的是正在迭代的陣列中的目前元素。但是,要存取另一個數組中的數據,我們需要恢復到原始點,它表示傳遞給 Execute 函數的資料參數。
因此,解決方案是使用原始點($)而不是索引表達式中的點:
{{range $i, $e := .First}}{{$e}} - {{index $.Second $i}}{{end}}
此調整可確保索引函數引用原始資料參數,從而允許對數組進行並行迭代。
解決此問題的另一種方法是定義一個名為 zip 的自訂模板函數,該函數接受多個切片作為輸入並傳回值對的切片。這樣的函數可以簡化模板程式碼,並可能在其他上下文中重複使用。
以上是如何使用'index”函數迭代 HTML 模板中的平行數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!