我一直在使用地理編碼器功能的項目上使用Mapbox。有時,地理編碼器的結果不會定義界限。只要用戶從地理編碼器的菜單中選擇一個位置,就會觸發事件處理程序嘗試縮放這些邊界的中心。Mapbox地理編碼結果並不總是有界限
預期的結果是至少將地圖居中放置在始終可用的可用latlng上。
實際結果是沒有任何反應。實際上,Mapbox會拋出一個錯誤,並且由於該錯誤,我自己的select事件處理程序也不會觸發。
// Mapbox vars
var map, geocoder;
// Event handlers
function foundHandler(args){
console.group('found');
console.log(args);
console.groupEnd();
}
function selectHandler(args){
console.group('select');
console.log(args);
console.groupEnd();
}
// Init Mapbox
geocoder = L.mapbox.geocoder('examples.map-vyofok3q');
map = L.mapbox.map('map', 'examples.map-9ijuk24y')
.addControl(
L.mapbox.geocoderControl('examples.map-vyofok3q', {})
.on('found',foundHandler)
.on('select',selectHandler)
);
http://jsfiddle.net/rgbk/rCjS4/1/
要重現
- 搜索 「波士頓」,並注意控制檯。結果會有界限。自定義「選擇」事件處理程序將觸發
- 搜索「Topsail NC」。結果沒有界限。自定義「選擇」事件處理程序不會觸發。
我沒有意識到它是在測試版。感謝信息和幫助incanus。我也發送了此副本以支持。 Mapbox網站建議發佈問題到stackoverflow。我懷疑我做錯了什麼。但是,是的,我越想它,這絕對是一個錯誤。 –