第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從 GO 模板獲取原始源代碼

從 GO 模板獲取原始源代碼

Go
千萬里不及你 2022-10-10 19:02:42
給定一個 go html 模板對象,我如何檢索原始源定義?我在文檔中看不到任何功能,但必須有辦法做到這一點。
查看完整描述

1 回答

?
慕哥6287543

TA貢獻1831條經(jīng)驗 獲得超10個贊

template.Template類型有一個Template.Tree導(dǎo)出字段,其中包含(模型)已解析的模板。

請注意,即使此字段已導(dǎo)出,也不會導(dǎo)出以供您使用,而是從文檔中引用:

*parse.Tree 字段僅被導(dǎo)出以供 html/template 使用,并且應(yīng)被所有其他客戶端視為未導(dǎo)出。

撇開這一點不談,有了解析樹,就可以重建構(gòu)建它的源代碼。parse.Tree有一個Root具有方法的字段,該String()方法從樹中構(gòu)建源文本。

例如:

src := `Hi {{.Name}}. You are {{.Age}} years old.`

t := template.Must(template.New("").Parse(src))

fmt.Println(t.Tree.Root.String())

這將輸出(在Go Playground上嘗試):

Hi {{.Name}}. You are {{.Age}} years old.

如前所述:Template.Tree不是公共 API 的一部分。您可以使用它,但不能保證它會保持導(dǎo)出狀態(tài),并且在未來的版本中也能正常工作。您應(yīng)該做的是保留您解析的源,而不是依賴Template.Tree.


查看完整回答
反對 回復(fù) 2022-10-10
  • 1 回答
  • 0 關(guān)注
  • 115 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號