首頁 >後端開發 >Golang >Go 模板引擎中的管道如何運作?

Go 模板引擎中的管道如何運作?

Barbara Streisand
Barbara Streisand原創
2024-12-26 17:16:12258瀏覽

How Do Pipelines Work in Go's Template Engine?

Go 模板引擎中的管道解釋

Go 提供了兩個模板包:text/template 和 html/template。 html/template 套件專注於安全地產生 HTML 輸出以防止程式碼注入,同時與 text/template 共用介面。因此,模板處理的基礎知識主要記錄在 text/template 套件中。

理解管道

管道是指模板內的值評估序列。它們由由管道字元“|”分隔的命令組成。每個命令可以是一個值、帶有參數的函數或方法調用,或者當放置在鏈的末尾時不帶參數的方法。每個命令的結果作為最後一個參數傳遞給以下命令,最終命令的輸出代表管道的值。

點 (.) 符號

點。是一個遊標,指向傳遞給模板的資料結構中的目前位置。它最初指向傳遞給模板的值,但可以透過 {{range}} 或 {{with}} 等運算進行修改。

在範本中使用 .Name 時,您引用的是名稱欄位或點目前指向的值的方法。如果值是結構體,.Name 將存取模板開頭的相應欄位或方法。

模板包含中的管道

當使用 {{template }},您指定一個管道將當前點值傳遞給包含的模板。管道傳遞的值成為呼叫模板內的點。

使用 $ 存取原始資料

由於點在範本處理過程中可能會發生變化,因此 $ 符號提供存取傳遞給範本執行的原始值。這允許您到達原始值的任何部分,即使在深度嵌套的模板呼叫中也是如此。

以上是Go 模板引擎中的管道如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn