我有一个JSON数据对象,它是从Spotify API请求一个专辑列表的结果。数据对象包含一个相册对象数组。该数组称为“项目”。每个对象都有一个包含3个图像的数组,该数组称为“图像”
我需要从数组中的第三个图像中提取URL并将其插入到我的html中:
<img src="{{url}}"/>
这是我正在使用的模板:
{{#each items}}
<div>
<h2>{{name}}</h2>
{{#each images}}
{{#getSmallImage @index}}
<img src="{{url}}"/>
{{/getSmallImage}}
{{/each}}
</div>
{{/each}}
我已经注册了以下帮助者:
Handlebars.registerHelper("getSmallImage", function (index, options) {
return index == 2;
});
脚本只打印单词“true”,而不是打印所需的 img 元素。
我知道,可怕的错误。
我在SO上看过类似的帖子,但需要帮助解决这个问题。
答案 0 :(得分:1)
句柄在每个块中都有一个@last
变量。 documentation表示它是一个bool,在迭代的最后一步都是如此。因此,您可以将模板更改为以下内容:
{{#each items}}
<div>
<h2>{{name}}</h2>
{{#each images}}
{{#if @last}}
<img src="{{url}}"/>
{{/if}}
{{/each}}
</div>
{{/each}}