【问题标题】:leaflet.js is showing empty map: Uncaught Error: Invalid LatLng object: (NaN, NaN)Leaflet.js 显示空地图:未捕获的错误:无效的 LatLng 对象:(NaN,NaN)
【发布时间】:2016-09-26 23:02:50
【问题描述】:

我只是想用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)

【问题讨论】:

    标签: javascript leaflet mapbox


    【解决方案1】:

    我在同一问题上停留了一会儿。原来我只是在初始化地图后错过了一个setView() 调用。

    【讨论】:

      【解决方案2】:

      我终于找到了答案:

      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);
      

      看到区别了吗?好吧,你来了:

      “最小缩放”:0,

      我不知道为什么需要这样做,但是没有这个地图框就无法按我的意愿工作......

      显然,为了让 mapbox.js 发挥作用,有一些 TileJSON 属性被视为必须具备的:例如,如果没有 center,它就不是做任何事。但是由于缺少这个,它至少会给你一个错误,而不是默默地失败......

      也许任何人都可以对此有所了解?

      【讨论】:

      • 这让我大吃一惊。我必须添加“中心”和缩放级别。得到了不同的错误负载:Uncaught TypeError: Cannot read property 'subtract' of undefined mapbox.js: Uncaught TypeError: Cannot read property 'add' of undefined
      猜你喜欢
      • 2017-11-15
      • 1970-01-01
      • 1970-01-01
      • 2014-03-06
      • 1970-01-01
      • 1970-01-01
      • 2016-08-29
      • 2015-06-26
      • 1970-01-01
      相关资源
      最近更新 更多