Go HTML/テンプレートでのベース レイアウト テンプレートの使用
提供されたコードでは、問題はベース テンプレート ファイルの不適切な使用にあります。これを解決するには、ベース テンプレート ファイルを定義し、動的に実行される部分テンプレートで参照する必要があります。
ベース テンプレート (base.html):
このファイルは、ヘッダー、フッター、ヘッダー、フッターなど、すべてのページで共有される要素を含む、ページ全体のレイアウトを定義します。ナビゲーション。
{{define "base"}} <!DOCTYPE html> <html lang="en"> <body> <!-- Header --> {{template "content" .}} <!-- Footer --> </body> </html> {{end}}
部分テンプレート 1 (page1.html):
このファイルは、ページ 1 に固有のコンテンツを定義します。
{{define "content"}} <h1>Page 1</h1> {{end}} {{template "base"}}
部分テンプレート 2 (page2.html):
このファイルは、ページ 2 に固有のコンテンツを定義します。
{{define "content"}} <h1>Page 2</h1> {{end}} {{template "base"}}
使用法:
使用するにはベーステンプレート、ベースとコンテンツを含むファイルを解析しますテンプレート:
tmpl, err := template.ParseFiles("page1.html", "base.html") if err != nil { // Handle error }
次に、指定されたコンテンツを含むテンプレートを実行します:
err = tmpl.ExecuteTemplate(w, "base", yourContext) if err != nil { // Handle error }
これにより、基本テンプレート レイアウト内に適切なコンテンツがレンダリングされます。
以上が基本レイアウト テンプレートを Go HTML/テンプレートで効果的に使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。