Как получить ссылку на текущий элемент в итерации?
{{#my_array}} <p>{{__what_goes_here?__}}</p> {{/my_array}}
Надеюсь, я просто упускаю из виду очевидное.
Согласно журналу изменений спецификации , неявный итератор (.) был добавлен в v1.1.0 спецификации.Каждая библиотека Усов, которая реализует по крайней мере v1.1.0, должна поддерживать это.
.
{{#array_of_strings}}<li>{{.}}</li>{{/array_of_strings}}
из исходного кода https://github.com/bobthecow/mustache.php
/** * The {{%IMPLICIT-ITERATOR}} pragma allows access to non-associative array data in an * iterable section: * * $context = array('items' => array('foo', 'bar', 'baz')); * * With this template: * * {{%IMPLICIT-ITERATOR}}{{#items}}{{.}}{{/items}} * * Would render as `foobarbaz`. * * {{%IMPLICIT-ITERATOR}} accepts an optional 'iterator' argument which allows implicit * iterator tags other than {{.}} ... * * {{%IMPLICIT-ITERATOR iterator=i}}{{#items}}{{i}}{{/items}} */
Я ненадолго отошел от своего кода и вспомнил, что в Ruby есть утка. Так как мой массив состоял из строк, все что мне было нужно:
{{#my_array}} <p>{{to_s}}</p> {{/my_array}}
Я оставлю этот вопрос здесь в надежде спасти кого-нибудь еще.