如何使用索引迭代HTML 模板中的平行數組
本文解決了迭代並行數組(大小相等)的困難在HTML 模板中。具體來說,如何利用範圍區塊內的索引函數來實現此目的。
索引函數是預先定義的全域範本函數,它根據提供的索引從映射、切片或陣列中檢索項目。此函數允許在模板內的資料結構內進行複雜的導航。
在迭代並行數組的上下文中,我們需要注意使用索引函數的上下文。預設情況下,範圍區塊內的點 (${}) 指的是正在迭代的陣列中的目前元素。但是,要存取另一個數組中的數據,我們需要恢復到原始點,它表示傳遞給 Execute 函數的資料參數。
因此,解是使用原始點($)而不是索引表達式中的點:
{{range $i, $e := .First}}{{$e}} - {{index $.Second $i}}{{end}}
此調整可確保索引函數引用原始資料參數,從而允許對陣列進行並行迭代。
解決此問題的另一種方法是定義一個名為 zip 的自訂範本函數,它接受多個切片作為輸入並傳回值對的切片。這樣的函數將簡化模板程式碼,並可能在其他上下文中重複使用。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3