Я начинаю работать с Mustache на PHP, и мне не удается заставить функции обертки работать как долговые обязательства.Как использовать обертку функций в файле mustache.php?
У меня есть этот шаблон
{{#skill_level}}
<span class="stars">
{{#stars}}
{{skill_level}}
{{/stars}}
</span>
{{/skill_level}}
И у меня есть эти данные
$data = new StdClass;
$data->skill_level = 3;
$data->stars = function($level) {
$aux = "";
$l = intVal($level);
for ($i = 0; $i < $l; $i++) {
$aux .= "+";
}
for ($i = $l; $i < 5; $i++) {
$aux .= ".";
}
return $aux;
};
оказываю m.render($tenplate, $data);
, и я хотел бы получить что-то вроде:
<span class="stars">
+++..
</span>
Но это Безразлично» т работы.
я
<span class="stars">
.....
</span>
Поскольку Mustache
проходит "{{skill_level}}"
к моей функции вместо значения 3
.
Кроме того, если изменить шаблон пут забой в усах этикетках:
{{ #skill_level }}
<span class="stars">
{{ #stars }}
{{ skill_level }}
{{ /stars }}
</span>
{{ /skill_level }}
Затем {{ skill_level }}
обрабатывается, но не отправляется {{ #starts }}
, рендер полученного
<span class="stars">
3
</span>
Так , кто-нибудь знает, что я делаю неправильно? Как мне написать шаблон, чтобы он работал? Любые советы или опыт приветствуются. Благодарю.
Да. Это то, что нужно :) – bobthecow
Я бы прокомментировал вашу лямбду примерно так: https://gist.github.com/bobthecow/19f09ebf4395ee9f87d9 – bobthecow
Спасибо! Всегда учитесь в этом сообществе. –