使用Go 模板進行繁瑣的if 操作
嘗試在Go 模板中執行條件檢查時,您可能會遇到意想不到的問題。考慮以下場景:
您已宣告一個名為 Category 的結構,其中包含一個名為 isOrientRight 的 bool 欄位。在對 Category 結構體切片進行迭代的範圍循環中,您嘗試使用 {{if}} 語句根據 isOrientRight 的值控制輸出。然而,模板只顯示一個空白頁面。
解
要解決此問題,您需要透過大寫首字母來匯出 Category 結構體的欄位。預設情況下,未匯出的欄位(以小寫字母開頭)只能在聲明該類型的包內存取。在這種情況下,text/template 和 html/template 是單獨的包,因此您需要匯出欄位以允許它們存取。
以下是更新的程式碼:
type Category struct { ImageURL string
以上是為什麼我的 Go 模板不評估具有未匯出欄位的條件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!