leaflet.js显示空地图:未捕获错误:无效的LatLng对象:(NaN,NaN)

时间:2014-03-04 20:23:23

标签: javascript leaflet mapbox

我只是想用mapbox.js设置我的第一张地图显示。不幸的是,它不起作用,我不知道为什么。

我尝试将其缩减为非常基本的设置,但仍然没有运气(可以找到完整的来源here)。

最重要的部分:

var mapconfig = { "tilejson": "2.0.0",
    "scheme": "xyz",
    "tiles": ["/proxy.php?z={z}&x={x}&y={y}"],
    "maxzoom": 18,
    "center": [12.93509,50.88306,12]
};
var map = L.mapbox.map('map', mapconfig);

虽然错误控制台没有显示任何错误消息,但它没有显示任何切片。我看到的是地图视图和缩放框的轮廓。此外,没有对代理脚本的请求(工作正常,顺便说一下 - 我之前一直在使用Open Layers 3 [请参阅:ol3js.org],代理也很好)。

目前我将光标移到地图上,错误控制台会收到消息告诉我

  

未捕获错误:无效的LatLng对象:(NaN,NaN)

2 个答案:

答案 0 :(得分:3)

我在短时间内遇到了同样的问题。事实证明,我在初始化地图后错过了var matchingStep = steps.find(function(step) { return !(step.tasks.find(function(task) { return !(task.complete); }); }); 电话。

答案 1 :(得分:1)

我终于找到了答案:

var mapconfig = { "tilejson": "2.0.0",
"scheme": "xyz",
"tiles": ["/proxy.php?z={z}&x={x}&y={y}"],
"minzoom": 0,
"maxzoom": 18,
"center": [12.93509,50.88306,12]
};
var map = L.mapbox.map('map', mapconfig);

看到区别?好吧,你在这里:

  

“minzoom”:0,

我不知道为什么这是必需的,但如果没有这个mapbox不能按我的意愿工作......

显然有一些TileJSON属性被视为必须具有以使mapbox.js正常工作:例如,没有 center ,它不是做任何事情。但是,如果缺少它,它确实会给你一个错误,至少而不是默默地失败......

也许有人可以对此有所了解吗?