2

我有一个非常基本的地图示例:(JsFiddle

require(["esri/map"],
    function(Map) {
        var baseMap = new Map("map", {
            basemap: "terrain",
            center: [10, 51],
            zoom: 12,
            maxZoom: 22
        });
    });

当我超过某个缩放级别时,我收到以下错误:

init.js:587 Uncaught TypeError: Cannot read property 'resolution' of undefined
at Object.__getExtentForLevel (init.js:587)
at Object._extentUtil (init.js:579)
at Object._wheelZoom (init.js:1254)
at Object.<anonymous> (init.js:63)
at Object.c [as onMouseWheel] (init.js:119)
at Object._fire (init.js:1279)
at Object._onMouseWheelHandler (init.js:1286)
at HTMLDivElement.<anonymous> (init.js:63)

使用相同代码(但基于 3.13)在内部托管的其他几个应用程序能够放大,直到可以看到所有街道名称和门牌号。

是什么导致了这些错误?

4

1 回答 1

1

看起来“地形”底图的分辨率没有最终用户希望的那么高,并且 ESRI 忘记限制该底图的缩放能力。

切换到或osm解决问题。topostreets

解决方案是更改basemap: "terrain",basemap: "topo",.

于 2017-06-07T12:57:46.587 回答