在 Handlebars 中的 "each" 循环内插入变量
Interpolate variable inside "each" loop in Handlebars
我在一个使用 handlebars 作为模板引擎的 express 应用程序中渲染它:
res.render("movies", { data: pages, arraypages:arrayPages, movie:movie})
"arrayPages" 是一个数组:
[
1, 2, 3, 4,
5, 6, 7
]
"movie" 是一个类似 "top gun" 的字符串
车把模板内有:
{{#each arraypages}}
<form action="/getmoviepage" method="post">
<a>{{this}}</a>
<input type="hidden" name="{{movie}}" value="{{this}}">
</form>
{{/each}}
输出:
<form action="/getmoviepage" method="post">
<a>1</a>
<input type="hidden" name="" value="1">
</form>
<form action="/getmoviepage" method="post">
<a>2</a>
<input type="hidden" name="" value="2">
</form>
<form action="/getmoviepage" method="post">
<a>3</a>
<input type="hidden" name="" value="3">
</form>
<form action="/getmoviepage" method="post">
<a>4</a>
<input type="hidden" name="" value="4">
</form>
<form action="/getmoviepage" method="post">
<a>5</a>
<input type="hidden" name="" value="5">
</form>
<form action="/getmoviepage" method="post">
<a>6</a>
<input type="hidden" name="" value="6">
</form>
<form action="/getmoviepage" method="post">
<a>7</a>
<input type="hidden" name="" value="7">
</form>
如您所见,“电影”变量未呈现(该变量应在“名称”属性内呈现)。如果我将变量放在“每个”循环之外,则渲染正常。
{{movie}} //This is rendered OK, outside the "each" loop
{{#each arraypages}}
<form action="/getmoviepage" method="post">
<a>{{this}}</a>
<input type="hidden" name="{{movie}}" value="{{this}}">
</form>
{{/each}}
如何在车把的“每个”循环内渲染变量?
尝试
<input type="hidden" name="{{../movie}}" value="{{this}}">
../
路径段引用了您想要的父模板范围。
Potential Duplicate Question
我在一个使用 handlebars 作为模板引擎的 express 应用程序中渲染它:
res.render("movies", { data: pages, arraypages:arrayPages, movie:movie})
"arrayPages" 是一个数组: [ 1, 2, 3, 4, 5, 6, 7 ]
"movie" 是一个类似 "top gun" 的字符串
车把模板内有:
{{#each arraypages}}
<form action="/getmoviepage" method="post">
<a>{{this}}</a>
<input type="hidden" name="{{movie}}" value="{{this}}">
</form>
{{/each}}
输出:
<form action="/getmoviepage" method="post">
<a>1</a>
<input type="hidden" name="" value="1">
</form>
<form action="/getmoviepage" method="post">
<a>2</a>
<input type="hidden" name="" value="2">
</form>
<form action="/getmoviepage" method="post">
<a>3</a>
<input type="hidden" name="" value="3">
</form>
<form action="/getmoviepage" method="post">
<a>4</a>
<input type="hidden" name="" value="4">
</form>
<form action="/getmoviepage" method="post">
<a>5</a>
<input type="hidden" name="" value="5">
</form>
<form action="/getmoviepage" method="post">
<a>6</a>
<input type="hidden" name="" value="6">
</form>
<form action="/getmoviepage" method="post">
<a>7</a>
<input type="hidden" name="" value="7">
</form>
如您所见,“电影”变量未呈现(该变量应在“名称”属性内呈现)。如果我将变量放在“每个”循环之外,则渲染正常。
{{movie}} //This is rendered OK, outside the "each" loop
{{#each arraypages}}
<form action="/getmoviepage" method="post">
<a>{{this}}</a>
<input type="hidden" name="{{movie}}" value="{{this}}">
</form>
{{/each}}
如何在车把的“每个”循环内渲染变量?
尝试
<input type="hidden" name="{{../movie}}" value="{{this}}">
../
路径段引用了您想要的父模板范围。
Potential Duplicate Question