我的模板文件:
{{range $index, $option := .alternatives}}
<div id="splashAlternative{{$index}}" class="col-sm-2">
<select id="flashSrc_{{$index}}">
{{template "alternative_src.html" $option}}
</select>
</div>
{{end}}
我希望将$option
传递给模板,并alternative_src.html
代码:
{{if compare .option ""}}
<option value="" selected="selected">
</option>
{{else}}
<option value=""></option>
{{end}}
{{if compare .option "xxx"}}
<option value="xxx" selected="selected">xxx</option>
{{else}}
<option value="xxx">xxx</option>
{{end}}
但我在下面遇到问题:
executing "alternative_src.html" at <.option>: can't evaluate field option in type string
答案 0 :(得分:1)
当您使用{{template}}
操作并传递内容时,它将成为被调用模板中的点.
。引自text/template
的包文档:
{{template "name" pipeline}}
The template with the specified name is executed with dot set
to the value of the pipeline.
因此在alternative_src.html
内部仅将该选项称为点.
(点.
将表示您传递给模板的管道的值,即{{1} }在调用者模板中):
$option