私はPHPでMustacheを使い始めていますが、ラッパー関数を負債として機能させることができません。
私はこのテンプレートを持っています
{{#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>
value の代わりに関数にMustache
渡しているためです。"{{skill_level}}"
3
さらに、テンプレートを変更すると、口ひげのラベルにバックスペースが挿入されます。
{{ #skill_level }}
<span class="stars">
{{ #stars }}
{{ skill_level }}
{{ /stars }}
</span>
{{ /skill_level }}
次に{{ skill_level }}
が処理されますが、 に送信されず{{ #starts }}
、取得されるレンダーは
<span class="stars">
3
</span>
それで、誰かが私が間違っていることを知っていますか?テンプレートを機能させるには、どのように記述すればよいですか? アドバイスや体験談なんでも構いません。ありがとう。