我已经使用Google Directions api几天了。我的javascript代码在一两天内运行良好,但是一晚深夜它没有用。在FF控制台中:
TypeError:b未定义[了解更多] common.js:49:155
FWIW,这是common.js第49行(不是我的代码!):
电子; _ SB(d); window.gm_authFailure&安培;&安培; window.gm_authFailure()} EL(); C(B)})})}; .CN =函数(A,B) {ab(); return function(){var c = this,d = arguments; af(function(a){a&& b.apply(c,d)})}}; dn = function(a,b ,c,d,e,f){this.b = new Km; this.b.setUrl(c.substring(0,1024)); f&&(this.b.data [8] = f); ?d this.b.data [1] = d:E&安培;及(this.b.data [2] = E); this.b.data [4] = 0; this.b.data [5] = 1; this.l =一个; this.j = b}; EN =函数(){(DL)= 0;!0 = a.getStatus()|| .Aj(A,2)|| ($ M(), .P(A,3)及;&安培; .sb(_ p(A,3))); EL()};
我非常确定错误与我的客户端应用中的此次调用有关:
directionsService.route(myRequest,myCallBack函数);
这是一种Google方法,可以向Google询问从一个地理位置到另一个地理位置的路线。
这是我的代码:https://pastebin.com/AtcFQ9tZ
ost.setPickupCharge = function(position)
{
var p = ost.pickup;
p.lat = position.coords.latitude;
p.lng = position.coords.longitude; /* alert("lat: " + lat + "\nlng: " + lng); */
var request = {
origin: '45 East University Avenue, Champaign, IL',
destination: new google.maps.LatLng(p.lat,p.lng),
provideRouteAlternatives: false,
travelMode: 'DRIVING'
}
function showCost(result, status) {
if (status != 'OK') { alert(status) }
else {
var route = result.routes[0];
var dists = route.legs.map(function(leg) { return leg.distance.value }); p.miles = 0.00062137 * A.sum(dists);
var times = route.legs.map(function(leg) { return leg.duration.value }); p.minutes = A.sum(times) / 60;
p.charge = .6 * p.miles + .15 * p.minutes;
alert("pickup charge = $" + p.charge);
ost.showRideButtons();
}
}
directionsService.route(request,ost.showCost);
}
答案 0 :(得分:0)
好吧,我在自己的代码中发现了这个错误。它是一个未定义的回调(ost.showCost而不是本地的showCost)。