天天看點

百度地圖js報錯Uncaught TypeError: b.ga(...).nb is not a function

事件:百度地圖異步批量建立marker,單擊單個marker彈出對話框報錯。

報錯:

VM1771:1 Uncaught TypeError: b.ga(...).nb is not a function
    at HTMLSpanElement.eval (eval at zZ (getscript?v=2.0&ak=CBb579132…&services=&t=20170411141812:1), <anonymous>:1:1279)      

分析:斷點調試得知建立point錯誤。

百度point對象:H {lng: 121.4879592445485, lat: 31.24944089864297}

我自己建立的對象:Object {lat: 31.249642115944074, lng: 121.48752080473454}

由于對象類型不一緻導緻的報錯。

解決:

var point = gcj2bd(info.distY, info.distX);
point = new BMap.Point(point.lng, point.lat);