我正在尝试建立房屋出租网站并为每个列表实施Google Maps标记。我已将每个房子的经纬度及其名称存储在该集合中。

但是我无法在助手端调用{{olat}},因为我可以在视图模板上充当每个模板的占位符。我如何在下面的帮助器中调用收集数据。

Template.listing.rendered = function() {
    var tmpl = this;

    VazcoMaps.init({}, function() {

        tmpl.mapEngine = VazcoMaps.gMaps();

        tmpl.newMap2.addMarker({
            lat: 28.6508, //replace this with lat,long variable stored in collection
            lng: 77.3152, //for each listing
            zoom: 11
            icon: '/images/mark.png',
            draggable: false
        });

    });

};

最佳答案

因此,您的olat值在模板的data context上可用,并且您想在onRendered挂钩中对其进行检索。似乎是呼叫Template.currentData()的好地方:

Template.listing.onRendered(function () {
  var tmpl = this;
  var context = Template.currentData();

  VazcoMaps.init({}, function() {
    tmpl.mapEngine = VazcoMaps.gMaps();

    tmpl.newMap2.addMarker({
      lat: context.olat,
      lng: context.olong,
      zoom: 11,
      icon: '/images/mark.png',
      draggable: false
    });
  });
});

07-28 11:41