【发布时间】:2014-06-02 15:26:18
【问题描述】:
当我点击给定位置时,我目前正在谷歌地图上添加标记。标记当前保存到集合 - 标记 - 和更经典的数组中。我现在想要的是在地图上添加新的标记,因为它们是由其他用户添加的。
我的问题是:有没有办法在集合被修改时得到通知(例如另一个用户添加标记)?
也许这不是最好的方法。还有什么建议吗?
if (Meteor.isClient) {
Template.hello.rendered = function(){
markersArray = [];
var latlng = new google.maps.LatLng(46.123, 8.843);
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
latlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
map.setCenter(latlng);
});
}
var opts = {
zoom: 16,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById("map-canvas"), opts);
// add a click event handler to the map object
google.maps.event.addListener(map, "click", function(event)
{
placeMarker(event.latLng);
});
Session.set('map', true);
function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map
});
Markers.insert({"marker": location, "date": new Date()});
markersArray.push(marker);
}
}
}
【问题讨论】:
标签: javascript google-maps google-maps-api-3 meteor