模板获取handlebar java中迭代器列表的长度
Java代码--
List<String> table = Lists.newArrayList();
........
模板代码--
{{#each table}}
<td height="28" width="27"><h1> {{table.length}}</h1></td>
<td height="28" width="27"><h1> {{table.size}}</h1></td>
<td height="28" width="27"><h1> {{table.count}}</h1></td>
<td height="28" width="27"><h1> {{../../table.length}}</h1></td>
<td height="28" width="27"><h1> {{../table.length}}</h1></td>
{{/each}}
我正在尝试获取车把模板中列表的长度。但是我试过上面的那些线都不起作用!我想知道我哪里做错了在handlebar java中获取迭代器长度的正确方法是什么强>
提前谢谢
# 1 楼答案
我认为问题在于列表上的
size
方法不是getSize()
,它只是size()
。而且default句柄Java“[使用]JavaBean方法(即公共getXxx和isXxx方法)和Map作为值解析器”,所以像size()
这样的方法不起作用基本上,您希望构建一个包含
MethodValueResolver
的上下文,该上下文处理任何公共方法从here:
此外,multiple value resolvers example
或者,由于MethodValueResolver有点过火,也许实际上最好只是显式地向下传递长度,正如您在评论中提到的那样
# 2 楼答案
下面是一个javascript/html解决方案。基本上,您必须获取{{#each}之外的长度。。。{{/每个}}