如何在Node.js的HBS文件#each循环中打印index+1实现序号从1开始
在Handlebars #each循环中实现从1开始的序号
要让序号从1开始,有两种常见的实现方式:
方法1:使用内置加法辅助函数(部分框架自带)
很多基于Handlebars的框架(比如Ember.js、Handlebars.js扩展环境)自带了add辅助函数,直接在模板里对@index做加1操作即可:
{{#each item}} <tr> <th>{{add @index 1}}</th> </tr> {{/each}}
方法2:自定义加法辅助函数(原生Handlebars)
如果是原生Handlebars环境没有内置add,需要先在JS代码中注册自定义辅助函数:
// 注册add辅助函数 Handlebars.registerHelper('add', function(a, b) { return a + b; });
注册完成后,就能像方法1一样在模板里使用{{add @index 1}}生成从1开始的序号。
另外注意你原代码里的小问题:结束标签误写成了<tr>,应该改为</tr>,否则会导致表格结构错乱。
内容的提问来源于stack exchange,提问作者Sojo C Johny
相关产品推荐
相关产品推荐

