首页 > 解决方案 > 尝试从 webmap API 版本 4.11 创建地图时,ArcGIS util 加载失败

问题描述

这是我的要求

    require([
        "esri/views/MapView",
        "esri/WebMap",
        "esri/config",
        "esri/arcgis/utils"
    ],
    function (MapView, WebMap, esriConfig, arcgisUtils)

这是我的链接

<link rel="stylesheet" href="https://js.arcgis.com/4.11/esri/themes/light/main.css" />
<script src="https://js.arcgis.com/4.11/"></script>

我正在检索一个网络地图,我想创建一个地图。我使用以下代码行来做到这一点。

    /**
     * Purpose: Create a new map object from the webmap retrieved online
     */
    function createMap(arcgisUtils) {
        mapDeferred = arcgisUtils.createMap(webmap, "map", {
            mapOptions: {
                slider: true
            }
        });

        /**
        * Purpose: Assign map once a response is retrieved
        *
        * @param response
        */
        mapDeferred.then(function (response) {
            map = response.map;

            /* EVENTS */
            map.on("load", function () {
                map.on("click", updateLongitudeLatitude);
            });

            /* TODO
              Retrieve layers
              Figure out filter layers
              Access pop up window
            */
        });

    }

我的问题是地图没有在谷歌浏览器中加载。我查看了错误消息,它说 arcgis utils 无法加载。所以我认为4.11可能不支持arcgis utils?如果不是,那么我如何从我检索到的网络地图创建地图对象。提前致谢。

错误信息:

错误:scriptError:https ://js.arcgis.com/4.11/esri/arcgis/utils.js

无法加载资源

标签: javascriptarcgis-js-api

解决方案


您正在尝试使用esri/arcgis/utils来自3.x 版本的 API,但您正在加载版本 4.11 ( <script src="https://js.arcgis.com/4.11/ ...)。我鼓励您坚持使用 api 的 4.x 版本,但将您的代码更改为使用esri/WebMap完整的例子在这里


推荐阅读