Golang下的html template模組使用

2021-09-27 02:13:10 字數 1729 閱讀 4485

關於template模板,golang語言提供了兩個包text/templatehtml/template,前者主要用來處理文字檔案的變數渲染,而後者主要用於對html之類的網頁檔案進行渲染。由於最近在使用gin框架編寫rest api,順便學習template的使用,再此記錄一下。

template模板的使用主要是在對template結構體的相關方法進行操作。我們首先得初始化乙個template物件。

type template struct 

# 初始化乙個template物件

## must函式會在parse返回err不為nil時,呼叫panic,不需要初始化後再呼叫parse方法去檢測

func must(t *template,err error) *template

## new函式用來建立乙個指定的html模板

func new(name string) *template

## parsefiles函式用來從乙個指定的檔案中建立並解析模板

func parsefiles(filenames ...string) (*template, error)

## parseglob函式從指定的匹配檔案中建立並解析模板,必須得至少匹配乙個檔案

func parseglob(pattern string) (*template, error)

# template結構體物件常用的幾個方法

## 使用new()函式建立的模板需要指定模板內容

func (t *template) parse(text string) (*template, error)

## delims()方法用來指定分隔符來分割字串,隨後會使用parse, parsefiles, or parseglob方法進行模板內容解析

func (t *template) delims(left, right string) *template

## execute()方法用來把乙個模板解析到指定的資料物件data中,並且寫入到輸出wr中。如果有任何錯誤,就like停止,但如果是並行操作的話,有一些資料已經被寫入了。因此,使用該方法一定要注意併發安全性

func (t *template) execute(wr io.writer, data inte***ce{}) error

## 同上

func (t *template) executetemplate(wr io.writer, name string, data inte***ce{}) error

# 模板檔案

userlist:

} users:

}}:}}}

}}

# 示例程式

$ cat golanghtml.go

package main

import (

"html/template"

"os"

)func main() )

}$ go run golanghtml.go

userlist:

[bgbiao biaoge]

users:

0:bgbiao

1:biaoge

bgbiao

biaoge

golang視角下的設計模式

單利模式 func newsingleton singleton return instance func newsingleton singleton return instance func newsingleton singleton return instance func newsingl...

golang下的GOPATH路徑問題

為了方便,我一般使用task來管理專案的編譯等事項,由於才入門go,所以碰到乙個問題,以此篇為記。我需要開發乙個組建,所以 結構沒有src目錄,並且專案放在gopath路徑的src目錄下 我在編譯二進位制檔案的時候使用了下面的命令gopath pwd gobin pwd go install mai...

ubnutu下golang安裝Beego框架

把go環境變數設定好以後我們試試beego框架 首先去git 官方 讓輸入apt get install git 安裝beego框架ubnutu輸入 完成以後開啟我們到gopath到目錄 coarch和chostos不不用加到到,加以後會出現上面到目錄的,不建議大家加!我到環境變數就是這樣到 exp...