我如何在esri地图javascript API上添加和删除动态标记?

问题描述 投票:0回答:1
`require(["esri/map",
"esri/graphic",
"esri/symbols/PictureMarkerSymbol",
"esri/symbols/TextSymbol",
"esri/geometry/Point",
"esri/SpatialReference",
"esri/tasks/ProjectParameters",
"esri/tasks/GeometryService",
"dojo/dom",
"dojo/on",
"esri/dijit/HomeButton",
"dojo/domReady!"
],
function setupmap(Map, Graphic, PictureMarkerSymbol, TextSymbol, Point, SpatialReference, ProjectParameters, GeometryService, dom, on, HomeButton) {
var map = new Map("map-container", {
center: [83.0179802, 25.32327],
zoom: 13,
basemap: "streets"
});
map.graphics.clear();
map.on("load", function (evt) {
var home = new HomeButton({map: map}, "HomeButton");
home.startup();
picSymbol = new PictureMarkerSymbol(iconType, 20, 20);
$.each(detailsJSON, function (location, lstNodes) {
var locArr = location.split("--");
var latitude=locArr[0];
var longitude=locArr[1];
var geometryPoint = new Point(longitude, latitude,new SpatialReference(4326));
map.graphics.add(new Graphic(geometryPoint, picSymbol));
});
});
});`

如何在esri地图javascript API上添加和删除动态标记?当我在图形图层中添加标记时,会添加标记,但是如何删除它并通过另一个纬度经度添加新标记?

arcgis arcgis-js-api esri-maps
1个回答
0
投票

您可以存储对要添加的Graphic对象的引用,以后可以使用remove(graphic)方法将其删除。

let graphic = new Graphic(geometryPoint, picSymbol);
map.graphics.add(graphic);
...
map.graphics.remove(graphic);

您还可以使用方法removeAll()从图层中删除所有图形。

请参阅arcgis-js-api reference了解更多信息。

© www.soinside.com 2019 - 2024. All rights reserved.