自訂Go 範本中的索引輸出:範本中的算術
在Go 範本中,範圍操作允許透過數組方便地迭代,提供元素及其從零開始的索引。但是,對於某些情況,您可能需要修改顯示的索引以從非零值開始。
為什麼初始方法失敗
最初,嘗試在模板內執行算術運算,例如“{{$index 1}}”,會導致“非法數字語法”錯誤。這是因為模板語言本身並不支援算術運算。
解決方案:自訂函數
要實現所需的行為,需要定義一個自訂函數在範本之外執行算術運算。在本例中,我們建立一個名為「inc」的函數,它將給定索引增加 1。
以下是修改後的Go 範本程式碼,其中包含「inc」函數:
自訂函數定義為如下:
用法
要使用自訂函數,必須將其註冊到模板的FuncMap 中。提供的範例初始化 FuncMap 並向其添加“inc”函數,允許範本存取它。
在此場景中,模板迭代字串切片,顯示修改後的索引和對應元素。
結論
透過建立自訂函數,您可以擴展 Go 範本的功能來執行以下操作:範本語言語法本身不支援。這提供了更大的靈活性,並支援複雜的操作,例如模板內的算術操作。
以上是如何在 Go 模板中自訂導向輸出:你能在模板中進行算術運算嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!