javascript - 处理 Handlebars 中对象数组的最佳方法

标签 javascript handlebars.js

我正在学习如何使用 Handlebars ,但我不确定展示我的元素的最佳方式是什么。

基本上,我要显示一个复杂的对象。对象是这样的:

{
  bookList: [{
    name: "the name",
    reviewers: ["a reviewer name", "another reviewer"]
  }]
}

然后我的 Handlebars 模板需要显示如下内容:

{{#each bookList}}
<tr class="row">
<td class="cell">{{name}}</td>
<td class="cell">need to display comma separated names here, like this: "a reviewer name, another reviewer</td>
<td class="cell">display number of reviewers here, like this: "2"</td>
</tr>
{{/each}}

但我不确定我该怎么做,或者最好的方法是什么。在我将它传递给 handlebars 模板之前,我可以很容易地在 javascript 中预先格式化我的 javascript 对象,并且只需添加像“commaSeparatedReviewers”和“numberOfReviewers”这样的字段,但似乎使用 handlebar 来做它会更有效/更好我认为是 helper ?

我可以使用 handlebar helpers 来做一些事情,比如从数组中创建一个逗号分隔的字符串,并计算数组中的元素吗?如果是这样,我该怎么做?

最佳答案

对于任何使用谷歌搜索的人,您也可以直接实现它:

{{#each array}}
    {{this}}{{#unless @last}}, {{/unless}}
{{/each}}

关于javascript - 处理 Handlebars 中对象数组的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17099108/

相关文章:

javascript - 突出显示用户选择的文本片段,无需嵌套标签

javascript - 如何重新构造此 for 循环,以便在异步 api 调用完成之前不会发生下一次迭代

javascript - 如何使用 Handlebars 渲染 JSON 数组

javascript - Ember JS 和迭代而不影响结果计数

javascript - Handlebars 循环穿过内部对象

javascript - handlebars 不会呈现 HTML 图像标签? (使用 Node )

javascript - [object Null] 和 [object Undefined] 尚未实现吗?

javascript - 如何在数据网格中显示由具有属性和值的对象组成的数组?

javascript - 动态添加多个输入

javascript - 模板仅在刷新页面后呈现