2016-04-22 68 views
1

我从我的收藏中拉长,拉线,我想在地图上生成动态的Google地图标记。从流星模板注入Javascript

数据在源代码中正常填充,但标记无法在页面上显示。

是否可以注入一个JavaScript对象到<script></script>标签?

的Javascript

Template.maps.onRendered(function() { 
    var map = new google.maps.Map(this.find('.map'), {zoom: 8, center: new google.maps.LatLng(33.658206, -111.962827)}); 
    map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions); 
    }); 

HTML

<template name="maps"> 
    <div id="map-canvas"></div> 
</template> 

回答

1

不要混合使用HTML和JS。将相关模板的所有JavaScript内部方法。

Template.mapWrapper.onRendered(function() { 
    var map = new google.maps.Map(this.find('.map'), {...}); 
    _.each(locations, function(location) { 
    marker = new google.maps.Marker({...}); 
    }); 
}); 

您还应该使用类或数据参数,而不是元素的ID,但最重要的,不要混用HTML和JS。

+0

谢谢。我已经更新了我原来的问题。有了这个当前的实施,我不能让日历显示出来。上述更新的代码是否有明显的错误? – CuriousFellow

+0

地图*(不是日历) – SMKS

+0

您是否将我的示例变量名称替换为您的? –