2016-10-03 2 views
0

私はページ、それはヘッダーとボディがあるとしましょう。ヘッダーにはリンクがあり、クリックすると本文が変わりますが、ヘッダーは残ります。 html/templateライブラリを使用してこれを構築するのは簡単ですが、新しいページ全体を返すだけでは(データベースのヘッダーにある情報を毎回取得する)ばかりです。私はボディテンプレートをurlに応じて切り替える方法を推測します。ここでgolangテンプレートを使用した最小限の比較?

は私が持っているものです。

`

{{template "GlobalNav"}} 
{{template "GroupHeader" .Header }} 
{{ if eq .Active "" }} 
{{ template "GroupBody" .Body }} 
{{ else if eq .Active "papers" }} 
{{ template "GroupPapers" .Body }} 
{{ else if eq .Active "projects" }} 
{{ template "GroupProjects" .Body }} 
{{ end }}` 

Server Side: 

`http.HandleFunc("/g/", Groups) 
http.HandleFunc("/g/papers", GroupsPapers) 
http.HandleFunc("/g/projects", GroupsProjects) 
func Groups() { 
header := fromDBHeader(id) 
body := fromDBMain(id) 
render Home template ... 
} 
func GroupsPapers() { 
    header := fromDBHeader(id) 
    body := fromDBPapers(id) 
    render Paper template ... 
    } 
func GroupsProjects() { 
header := fromDBHeader(id) 
body := fromDBProjects(id) 
render Project template ... 
} 

`

は、それはいくつかのJSのための時間ですか?

答えて

0

この方法を試してみると、htmlファイルをhtmlフォルダに追加し、htmlとjsファイルを追加します。

func webServer() { 
http.Handle(
    "/", 
    http.StripPrefix(
     "/", 
     http.FileServer(http.Dir("html")), 
    ), 
) 
http.ListenAndServe(":9000", nil) 

}

AND http://localhost:9000/

下でそれを閲覧します
関連する問題