Meteor - 如何从Mongo集合中获取排序顺序的值?

时间:2016-05-18 17:37:24

标签: mongodb google-maps meteor meteor-blaze

我正在尝试做什么:

  • 通过迭代Mongo集合在页面上显示城市列表。
  • 使用城市的排序顺序#作为标记标签,在该列表旁边显示Google地图。

例如:

  1. 纽约 - >将在地图div
  2. 上标记为“1”的标记
  3. 芝加哥 - >将标记为“2”的标记
  4. Washington D.C. - >将标记为“3”的标记
  5. 简单设置,我的HTML是:

    <template name = "cities">
        {{#each city}}
            <p>{{cityname}}></p>
        {{/each}}
    </template>
    

    和JS:

    Template.cities.helpers({
        'city': function(){
            var country = Session.get('currentCountry');
            return Cities.find({ country: country}, {sort: {population: -1}});
        }
    });
    

    一切都很好,但我想在我们的城市旁边显示一个数字(这个数字是他们在DOM上加载的顺序,这取决于城市列表从中检索时的排序方式Mongo DB)。

    然后,我需要以某种方式将此数字传递给Google地图标记创建功能。

    感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

原来这是微不足道的(感谢Michel)

新HTML:

<template name = "cities">
    {{#each city}}
        <p>{{@index}} {{cityname}}></p>
    {{/each}}
</template>

如果您想将索引增加1(或任何其他值),请参阅:Adding offset to {{@index}} when looping through items in Handlebars