$ idx e $ len em uma instrução condicional dust.js
A documentação sobre poeira é apenashorrível, Eu já examinei tudo o que posso encontrar e não consigo descobrir como isso deve funcionar.
Eu estou tendo este problema com os valores supostamente especiais $ idx e $ len, que, se eu adivinhei corretamente, retornar o índice atual, enquanto iterar sobre uma seção de matriz e o comprimento da referida seção de matriz. Eu tenho uma condição @if (na verdade, vários) que estou tentando exercitar para formatar um modelo, e os valores não estão funcionando tão perto quanto eu posso dizer, o que me leva às seguintes perguntas:
São $ idx e $ len reais especiais em dust.js?Você pode usá-los em um @ if, e se sim, como?Assumindo que 1 = verdadeiro, é $ idx baseado em zero?Aqui está o meu modelo:
{#myArray}
{name}{@sep}, {/sep}{@if cond="('{$idx}' == '{$len} - 2')"}and {/if}{@if cond="('{$idx}' == '{$len} - 1')"}{@if cond="('{$len}' == '1')"} is {:else} are {/if}here.{/if}
{/myArray}
O que é suposto fazer:
Se houver uma pessoa, processe a string "Jake está aqui".Se houver duas pessoas, processe a string "Jake e John estão aqui".Se houver três ou mais pessoas, processe a string "Jake, John e Bill estão aqui". (obviamente, adicionando os nomes separados por vírgula conforme necessário)Se os $ idx e $ len specials funcionarem da maneira que se pensa que funcionam, este template faria o que eu quero, o mais próximo que eu possa dizer, no entanto, eu não acho nem $ idx ou $ len (ou ambos) são implementados. Se não estiverem, como faço para criar um modelo que faça o que eu quero?