You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Handlebars模板中@index从1开始而非0

Handlebars遍历订单元素时让索引从1起始的实现方法

要让Handlebars遍历order.line_items时的索引从1开始,有两种常用方案:

方案一:自定义加法Helper(原生Handlebars通用)

原生Handlebars不支持直接在模板中进行算术运算,需要先在后端Handlebars初始化代码里注册一个加法辅助函数:

Handlebars.registerHelper('add', function(num1, num2) {
  return num1 + num2;
});

之后在模板中调用这个Helper实现索引加1:

{{#each order.line_items as |li|}}
  <tr>
    <td>{{add @index 1}}</td>
    <!-- 其他列代码 -->
  </tr>
{{/each}}

方案二:使用支持表达式运算的Handlebars扩展

如果你的后端订单系统用的是支持直接算术表达式的Handlebars衍生版本(比如部分电商平台定制的模板引擎),可以直接在模板中写加法逻辑:

{{#each order.line_items as |li|}}
  <tr>
    <td>{{@index + 1}}</td>
    <!-- 其他列代码 -->
  </tr>
{{/each}}

两种方案都能实现索引从1起始的效果,优先推荐方案一,因为它兼容所有原生Handlebars环境。

内容的提问来源于stack exchange,提问作者bigebro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 20:37:08