使用Meteor获取列表中的项目/元素位置

使用Meteor获取列表中的项目/元素位置,meteor,Meteor,如何获取项目在列表中的位置 我正在尝试做如下事情: 模板: {{#each people}} {{position}}.- {{name}} {{/each} JS: 因此,如果玩家的数据为: [ { name: "Tom", rank: 1.2 }, { name: "Dick", rank: 0.7 }, { name: "Harry", rank: 1.5 } ] 结果将是: 1.- Dick 2.- Tom 3.- Harry 也许有一种方法可以用mongo投影

如何获取项目在列表中的位置

我正在尝试做如下事情:

模板:

{{#each people}}
  {{position}}.- {{name}}
{{/each}
JS:

因此,如果玩家的数据为:

[ 
  { 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

这更简单,并利用HTML标记处理有序列表:

<ol>
   {{#each people}}
      <li>- {{name}}</li>
   {{/each}
</ol>

Template.leaderboard.people = -> 
    Players.find({}, { sort: { rank: 1 } })

{{{每个人}
  • -{{name}}
  • {{/每个} Template.leadboard.people=-> Players.find({},{sort:{rank:1}})
    更多详情


    听起来好像您想编写自己的块帮助器(想想
    每个WithPosition
    ),下面是一个示例
    <ol>
       {{#each people}}
          <li>- {{name}}</li>
       {{/each}
    </ol>
    
    Template.leaderboard.people = -> 
        Players.find({}, { sort: { rank: 1 } })