我在一个使用手柄作为模板引擎的express应用程序中呈现了这一点:
res.render("movies", { data: pages, arraypages:arrayPages, movie:movie})
"arrayPages";是一个数组:[1、2、3、4,5、6、7]
"电影";是类似于";顶部枪";
车把模板内有:
{{#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>
正如你所看到的;电影";变量不呈现(该变量应在"name"属性内呈现(。如果我把变量放在";每个";循环显示正常。
{{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}}">
../
路径段引用的父模板作用域应该是您想要的。
潜在重复问题