繁体   English   中英

如何使用Handlebars循环遍历数组对象和模板

[英]How to loop over array objects and template with Handlebars

我在使用Handlebars模板化一些对象数据时遇到了麻烦,对象看起来像这样:

[{
    slug: "slug-q",
    videoBanner: true,
    videoId: "e_pBdaN5nEY",
    videoPoster: {
        "small": "630x630_partner.jpg",
        "medium": "853x863_partner.jpg",
        "large": "1306x653_partner.jpg",
        "xlarge": "1832x704_partner.jpg"
    }
},
{
    slug: "slug-w",
    videoBanner: true,
    videoId: "e_fewf5nEY",
    videoPoster: {
        "small": "630x630_partnerY.jpg",
        "medium": "853x863_partnerY.jpg",
        "large": "1306x653_partnerY.jpg",
        "xlarge": "1832x704_partnerY.jpg"
    }
}]

我的模板:

<a href="http://youtu.be/{{videoId}}" class="hero-content js-vid" target="_blank">

    {{#if videoBanner}}
        <img class="hero-img preload-image js-preload-image js-poster" alt="" sizes="100%" srcset="
            /static/img/partners/{{slug}}/{{videoPoster.small}} 320w,
            /static/img/partners/{{slug}}/{{videoPoster.medium}} 640w,
            /static/img/partners/{{slug}}/{{videoPoster.large}} 1024w,
            /static/img/partners/{{slug}}/{{videoPoster.xlarge}} 1280w">
    {{else}}
        <img class="hero-img preload-image js-preload-image" alt="" sizes="100%" srcset="
            /static/img/partners/{{slug}}/{{videoPoster.small}} 320w,
            /static/img/partners/{{slug}}/{{videoPoster.medium}} 640w">
    {{/if}}
</a>

现在唯一设置的是videoId ,我不知道在哪里需要添加{{#each}}以循环输出数据和模板。 我最初尝试在整个{{#each this}}周围添加{{#each this}} ,但这是不正确的。

在您的有效负载中添加密钥,并在{{#each}}使用它:

http://jsbin.com/loveci/1/edit?html,js,output

尝试在模板块周围编写{{#。}} {{/。}},这会在Mustache.js中循环一个构建手柄的数组。 (不确定,但我记得我用这种方式解决类似问题,所以值得快速尝试)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM