このとき {{}} 構文によって Go 内の変数を HTML 内に展開することができます。
array や map や slice の中身を順次取り出しながら表示する場合は
{{range}}{{end}} 構文を使って書くことができます。
<ul> {{range .}} <li>{{.Name}}さんこんにちは</li> {{end}} </ul>
ただ中身を表示するだけならこれでよいのですが、
map を使っている場合、どうしても key を埋め込みたい時があるでしょう。
(クリックした要素の key をサーバへ返したいときなど)
この場合は以下のように for each 文っぽく key とvalue を変数に入れることができます。
<ul id="gamelist"> {{range $key, $val := .}} <li class="game" key="{{$key}}"> <div class="title">{{$val.Name}}</div> <div class="description">{{$val.Description}}</div> <div class="thumbnail"><img width="200" src="/client/img/living.png"></div> <a href="/editor?game_key={{$key}}"><button class="edit">作る</button></a> <button class="copy">コピー</button> <button class="delete">消す</button> </li> {{end}} </ul>
ちなみに $val は無くても同じように動きます。
地味に 100 本目の投稿です。
0 件のコメント:
コメントを投稿