5

如果我使用索引助手是否可以使计数从 1 而不是 0 开始。两者:

{@idx}{.}{/idx}

{$idx}

是从零开始的。

有谁知道这样做的方法?

如果您可以这样做,那将是完美的:

{$idx + 1}

但显然那是行不通的。

4

3 回答 3

10

我想你可以将数学助手与 $idx 结合使用:

{@math key=$idx method="add" operand="1"/}
于 2013-02-08T21:56:25.550 回答
2

要在灰尘模板中使用@math,您需要添加默认情况下从灰尘核心包中排除的灰尘助手。

为了在节点中“加载”灰尘助手,您需要的特定语法是:

var dust = require('dustjs-linkedin');
dust.helper = require('dustjs-helpers');

万一您无法添加这些帮助程序,这将是一个非常奇怪的决定,您仍然可以像这样在当前代码库中创建自己的函数,可以使用它来代替 @gt 或 @math

var baseContext = dust.makeBase({
    position: function(chunk, context) {
        return context.stack.index + 1;
    },
  });

现在您可以使用 {position} 而不是 ${idx} 来计算循环从 1 到 n。

于 2013-02-26T20:39:40.050 回答
1

将数学助手放入 {@idx}

<table>
{#names}
<tr><td>{@idx}{@math key="{$idx}" method="add" operand="1"/}{/idx}</td>
    <td>{name}</td>
</tr>
{/names}
</table>
于 2014-01-31T16:09:13.863 回答