让我们在Handlebars中说我们有这个cards-list.html部分:
{{#each data}} <article class="card card_list-view card_list-view--regular"> <picture class="card-image"> <img src="{{root}}/assets/img/{{this.img}}" alt=""> </picture> <section class="card-section"> <header> <h3><a href="{{this.url}}">{{this.title}}</a></h3> </header> </section> </article> {{/each}}
数据是这样的:
{"id": "1","title": "A","img": "imga.jpg","url": "card-single.html" },{"id": "2","title": "B","img": "imgb.jpg","url": "card-single.html" }
并且 – 在card-single.html中 – 我想简单地使用以下内容呈现单张卡片:
<article class="card card_single-view"> <h4>{{title}}</h4} [etc..]
我如何通过href属性或其他方式将cards-list.html的原始上下文传递给card-single.html?
谢谢!
解决方法
使用Handlebars.registerPartial创建部分后,您可以将其包含在模板中,如下所示:
{{> cardSingle }}
此语法还接受对象参数:
{{> cardSingle objectOfThings }}
所以在你的cards-list.html中你可能有类似的东西:
{{#each data}} {{> cardSingle this }} {{/each}}
而你的cardSingle部分可以直接使用这个属性:
<h4>{{title}}</h4>