我正在尝试在gmap上绘制用户的当前位置。我认为我的代码接近正确,但我遗漏了一些东西:
的.js
Meteor.startup(function() {
GoogleMaps.load();
});
Template.map.helpers({
mapOptions: function() {
if (GoogleMaps.loaded()) {
return {
center: new google.maps.LatLng(42.7000, 23.3333),
zoom: 8
};
}
}
});
Template.map.onCreated(function() {
GoogleMaps.ready('map', function(map) {
var initialLocation;
var browserSupportFlag = new Boolean();
// Try W3C Geolocation (Preffered)
if (navigator.geolocation) {
browserSupportFlag = true;
navigator.geolocation.getCurrentPosition(function(position) {
initialLocation = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
map.setCenter(initialLocation);
}, function() {
handleNoGeolocation(browserSupportFlag);
});
}
// Browser doesn't support Geolocation
else {
browserSupportFlag = false;
handleNoGeolocation(browserSupportFlag);
}
})
})
html的
<template name="map">
<div class="map-container">
{{> googleMap name="map" options=mapOptions}}
</div>
<div class="container">
<div class="search">
<input id="search" type="text">
</div>
</div>
</template>
正在显示地图,我看到地理定位器已打开,但当前位置未居中且没有标记。有什么想法吗?