基本信息
以下是所在類或對象的基本信息。
AMD:
require(["esri/layers/MapNotesLayer"], (MapNotesLayer) => { /* code goes here */ });
ESM:
import MapNotesLayer from "@arcgis/core/layers/MapNotesLayer";
類:
esri/layers/MapNotesLayer
繼承: MapNotesLayer > Layer > Accessor
自從:用於 JavaScript 4.4 的 ArcGIS API
用法說明
MapNotesLayer 允許您顯示和修改來自 Map Viewer 的Map注釋(在 web Map上繪製的特征)。也可以使用 2D MapView 中的 SketchViewModel 創建新的 MapNotesLayer。
MapNotesLayer 將Map注釋組織為 sublayers
集合中的 5 種圖層類型:multipointLayer、pointLayer、polygonLayer、polylineLayer 和 textLayer。這些層中的每一層都是 GraphicLayers。標題(針對 LayerList 小部件)、popupTemplate、幾何圖形和符號係統可以更新和保留。
Map注釋是 web Map的一部分,通常使用 Map Viewer 創建。有關其他信息,請參閱 ArcGIS 在線文檔,了解如何 Add Map notes 。在 web map specification 中,Map注釋是 FeatureCollections 的一種特殊類型。
可以顯示使用 Map Viewer Classic 創建的Map注釋,但無法使用此類修改或訪問Map注釋。要了解MapNotesLayer中的Map注釋是否可以編輯,您可以檢查capabilities.operations.supportsMapNotesEditing屬性值。
已知限製
- 目前,MapNotesLayer 在 3D SceneViews 中不受支持。
- MapNotesLayer 不支持 Legend 小部件。
- 對可見性、比例範圍和不透明度屬性的更改不會保留。
- 使用 Map Viewer Classic 創建的Map注釋不支持編輯,並且不在 LayerList 小部件中顯示子圖層。
以下代碼段演示了如何加載包含MapNotes 圖層的現有網絡Map。
const map = new WebMap({
portalItem: {
id: "6b3bfc4900214761a709b5d5a6a3d92b"
}
});
const view = new MapView({
container: "viewDiv",
map
});
view.when(() => {
// get the layer type ("map-notes")
console.log(map.layers.getItemAt(0).type);
// get the title
console.log(map.layers.items[0].sublayers.items[0].sublayers.items[0].attributes.title);
// update the popupTemplate
map.layers.items[0].sublayers.items[1].sublayers.items[0].popupTemplate.content = "{title} has an updated popup";
});
此代碼段創建一個新的 MapView 並從現有門戶項目加載 MapNotes 圖層。
const map = new Map({
basemap: "topo-vector"
});
const view = new MapView({
container: "viewDiv",
map
});
const promise = Layer.fromPortalItem({
portalItem: {
id: "2e2f6840647d4cb9a384532652e5100f"
}
});
promise.then((layer) => {
console.log(layer.type); // "map-notes"
map.add(layer);
Promise.all([view.when(), layer.load()]).then(() => {
view.goTo(layer.fullExtent);
});
});
相關用法
- JavaScript ArcGIS MapNotesLayer.maxScale用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.fullExtent用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.visible用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.when用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.portalItem用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.minScale用法及代碼示例
- JavaScript ArcGIS MapNotesLayer layerview-create-error事件用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.on用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.opacity用法及代碼示例
- JavaScript ArcGIS MapNotesLayer.effect用法及代碼示例
- JavaScript ArcGIS MapNotesLayer layerview-create事件用法及代碼示例
- JavaScript ArcGIS MapImageLayer.minScale用法及代碼示例
- JavaScript ArcGIS MapImageLayer.customParameters用法及代碼示例
- JavaScript ArcGIS Map.allTables用法及代碼示例
- JavaScript Map.delete()用法及代碼示例
- JavaScript ArcGIS MapView double-click事件用法及代碼示例
- JavaScript ArcGIS MapView.constraints用法及代碼示例
- JavaScript ArcGIS MapView.takeScreenshot用法及代碼示例
- JavaScript ArcGIS MapView.when用法及代碼示例
- JavaScript ArcGIS MapImageLayer layerview-create-error事件用法及代碼示例
- JavaScript ArcGIS MapView.highlightOptions用法及代碼示例
- JavaScript ArcGIS MapView layerview-create事件用法及代碼示例
- JavaScript ArcGIS MapImageLayer.portalItem用法及代碼示例
- JavaScript ArcGIS MapImageLayer.fetchImage用法及代碼示例
- JavaScript ArcGIS MapImageLayer layerview-create事件用法及代碼示例
注:本文由純淨天空篩選整理自arcgis.com大神的英文原創作品 MapNotesLayer。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。