# テンプレート エンジンを使用して、困っている友達に役立つことを願っています。#1 概要応答本文を処理する場合、最も一般的な方法は、処理された HTML コードを送信することです。 HTML に埋め込む必要がある場合は、テンプレート エンジンが最適な選択です。
パッケージが提供されます。簡単な使用例:
<pre class="brush:php;toolbar:false;">package mainimport (
"html/template"
"log"
"net/http")func main() {
// 设置 处理函数
http.HandleFunc("/", TestAction)
开启监听(监听浏览器请求)
log.Fatal(http.ListenAndServe(":8084", nil))}func TestAction(w http.ResponseWriter, r *http.Request) {
// 解析模板
t, _ := template.ParseFiles("template/index.html")
// 设置模板数据
data := map[string]interface{}{
"User": "小韩说课",
"List": []string{"Go", "Python", "PHP", "JavaScript"},
}
// 渲染模板,发送响应
t.Execute(w, data)}</pre>
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>小韩说课</title></head><body>Hello, {{ .User }}<br>你熟悉的技术:<ul>{{ range .List }} <li>{{.}}</li>{{end}}</ul></body></html>
実行結果:
上記のコードは、テンプレートの解析、データのレンダリング、結果操作への応答など、テンプレート エンジンの基本的な使用法を完了します。詳細は以下のとおりです。
2 Parse template
Function
テンプレート ファイルを解析してテンプレート オブジェクトを取得できます。パラメータはテンプレート ファイルです。同時に、テンプレートファイルのファイル名(拡張子を除く)がテンプレートの名前として使用されます。
###template.New("name").Parse(src string)### を使用してテンプレート オブジェクトを作成し、テンプレート コンテンツの解析を完了することもできます。 ######3 データを適用して応答を送信######Function###func (t *Template) Execute(wr io.Writer, data Interface{}) error### 解析するデータを適用します。テンプレートを作成し、出力を wr に書き込みます。実行中にエラーが発生した場合、実行は停止しますが、wr のデータが書き込まれている可能性があります。 ######data は任意の型を受け入れることができます。最も一般的な型は、###map[string]interface{}### です。割り当てられたデータの一部を区別するために、さまざまな添え字が使用されます。テンプレートの ###.User###、###.List### を使用して、配布データの User および List にアクセスします。 ######以上! ######以上がGo言語でテンプレートエンジンを使う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。