當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


JavaScript ArcGIS WebMap用法及代碼示例


基本信息

以下是所在類或對象的基本信息。

AMD: require(["esri/WebMap"], (WebMap) => { /* code goes here */ });

ESM: import WebMap from "@arcgis/core/WebMap";

類: esri/WebMap

繼承: WebMap > Map > Accessor

自從:用於 JavaScript 4.0 的 ArcGIS API

用法說明

WebMapArcGIS OnlineArcGIS Enterprise portal 加載到 MapView 中。它定義了 Web Map的內容、樣式和書簽,並且可以在多個 ArcGIS Web 和桌麵應用程序之間共享。網絡Map保存為 JSON 文檔,ArcGIS API for JavaScript 通過WebMap 類可以輕鬆創建引人注目的 2D 應用程序。 JSON 文檔是根據 webmap specification 編寫的。盡管您可以輕鬆創建自己的 web Map,但您可以使用許多示例 webmaps in ArcGIS Online 來開始使用 API。您可以修改這些網絡Map或向這些網絡Map添加新內容。

要將 ArcGIS Online 中的 WebMap 加載到 MapView 中,您必須在此類的 PortalItem 屬性中引用 web Map的 ID。

const webmap = new WebMap({
  portalItem: { // autocasts as new PortalItem()
    id: "e691172598f04ea8881cd2a4adaa45ba"
  }
});

要從 on-premise 門戶加載 Web Map,請在 esriConfig.portalurl 中設置門戶 URL。

esriConfig.portalUrl = "https://myHostName.esri.com/arcgis";

const webmap = new WebMap({
  portalItem: { // autocasts as new PortalItem()
    id: "f701172599f04ea8781de2a4adzz46ab"
  }
});

然後您必須在視圖的map 屬性中引用WebMap 實例。

const view = new MapView({
  map: webmap,  // The WebMap instance created above
  container: "viewDiv"
});

已知限製

  • WCSLayers 當前不受支持。 WFSLayers 必須來自 WFS 2.0.0 服務並啟用 GeoJSON 輸出格式。

    • 在 web Map包含 API 尚不支持的圖層類型的情況下,圖層將被創建為 UnsupportedLayer 。此層類型專門用於這些層可能存在於給定 WebMap 中的情況(例如 WFS 1.0.0 中的 WFS 層),但當前訪問它的 API 版本可能不支持。
    • 如果 WebMap 的未來版本包含新類型的層,則將使用 UnknownLayer。 API 版本可能無法識別此層類型,因此會顯示為 UnknownLayer
  • 嵌入式路由

    • 在 ArcGIS Online 8.1 版本(2020 年 3 月)之前,當從要存儲在 WebMap 中的項目中複製路徑圖層時,它將被存儲為嵌入式要素集合,並且無意中未將其歸為路徑。當這些網絡Map被 JS API 加載時,路線將由 GroupLayer 而不是 RouteLayer 表示。這不會影響 ArcGIS Online 8.1 版本後複製的路徑圖層項目或存儲為門戶項目的路徑。複製路徑圖層項目以存儲為 web Map的一部分並不是常見的場景。
  • 從彈出函數訪問幾何

    • 從 4.17 版開始,webmaps 不再在其彈出函數中返回幾何圖形。如果彈出窗口沒有適用於幾何的引用 Arcade 表達式,則現在需要設置 webmap 圖層的 outFields 或其 PopupTemplate outFields

相關用法


注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 WebMap。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。