В базовом примере таблицы лидеров на сайте meteor.com есть метод selected_name.
Template.leaderboard.selected_name = function () {
var player = Players.findOne(Session.get("selected_player"));
return player && player.name;
};
{{#if selected_name}}
<div class="details">
<div class="name">{{selected_name}}</div>
<input type="button" class="inc" value="Give 5 points" />
</div>
{{/if}}
Вместо этого я хотел бы вернуть весь объект игрока, а затем обработать этот объект как контекст с помощью руля. Хотел бы я сказать так:
Template.leaderboard.selected_person = function () {
var player = Players.findOne(Session.get("selected_player"));
return player || false;
};
{{#if selected_person}}
<div class="details">
<div class="name">{{name}}</div>
<input type="button" class="inc" value="Give 5 points" />
</div>
{{/if}}
Приведенный выше блок #if на самом деле не работает в метеоре. Оператор #if просто оценивает метод selected_person, а вложенный {{name}} абсолютно ничего не делает. Я хотел бы знать, можно ли написать метод, чтобы возвращаемый объект можно было использовать в качестве контекста блока #if.