2016-04-22 94 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

您是否將我的示例變量名稱替換爲您的? –