【发布时间】:2016-10-08 02:12:14
【问题描述】:
我只是想计算两点之间的距离,但它给了我 Uncaught TypeError: a.lat is not a function。
function MapLocations() {
var i = 0;
var infoWindow = new google.maps.InfoWindow();
var myLatLng = {lat: 31.553761202565646, lng: 74.26506623625755}
var m = new google.maps.Marker({
map: map,
clickable: true,
animation: google.maps.Animation.DROP,
title: 'My Home',
position: myLatLng,
// html: h[i],
});
var circle = new google.maps.Circle({
map: map,
radius: 18.288, // 10 miles in metres
fillColor: '#50D050'
});
circle.bindTo('center', m, 'position');
var distanceInMetres = google.maps.geometry.spherical.computeDistanceBetween(myLatLng, pos).toFixed(2);
//console.log(distanceInMetres);
//google.maps.event.addListener(m, 'click', function () {
// infoWindow.setContent('Hello');
// infoWindow.open(map, this);
//});
//google.maps.event.addListener(dragable_marker, 'dragend', function (e) {
// alert(circle.getBounds().contains(dragable_marker.getPosition()));
//});
//alert(distanceInMetres);
i++;
}
pos 是从导航器对象中获取的用户位置。问题是,当我删除 computedistance 时,一切正常。
【问题讨论】:
-
你确定
myLatLng应该是一个普通对象吗?似乎该库希望您的lat属性是一个函数,而不是一个值