Google方向,common.js中的错误?

时间:2017-07-27 23:49:26

标签: javascript google-maps

我已经使用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);
}

1 个答案:

答案 0 :(得分:0)

好吧,我在自己的代码中发现了这个错误。它是一个未定义的回调(ost.showCost而不是本地的showCost)。