【发布时间】:2014-01-12 14:31:05
【问题描述】:
如何获得一个项目在列表中的位置?
我正在尝试执行以下操作:
模板:
{{#each people}}
{{position}}.- {{name}}
{{/each}
JS:
Template.leaderboard.people = -> Players.find({}, { sort: { rank: 1 } })
Template.leaderboard.position = -> ???
因此,如果有关 Players 的数据是:
[
{ name: "Tom", rank: 1.2 },
{ name: "Dick", rank: 0.7 },
{ name: "Harry", rank: 1.5 }
]
结果将是:
1.- Dick
2.- Tom
3.- Harry
也许有一种方法可以使用 mongo 投影,但我找不到方法。
更新/回答:
Template.leaderboard.people = ->
Players.find({}, { sort: { rank: 1 } }).map (doc,index) ->
doc.position = index + 1
doc
【问题讨论】:
-
听起来你想编写自己的块助手(想想
eachWithPosition)
标签: meteor