版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/rookiepm/article/details/84840521
其中遇到的坑:
1.未开启feature server
上代码:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>测试</title> <script src="https://js.arcgis.com/4.9/"></script> <script> function addFeature(){ var polygon={ type: "polygon", // autocasts as new Polygon() rings: [ [465373.67283938953, 4574685.605095486], [465448.7368793035, 4574662.143328166], [465442.06908027834, 4574640.809887505], [465367.0048759384, 4574664.271654826], [465373.67283938953, 4574685.605095486] ] }; var url="http://localhost:6080/arcgis/rest/services/BP/BP/FeatureServer/0"; applyEdits(polygon,url); } function applyEdits(polygon,url){ require(['esri/layers/FeatureLayer', "esri/geometry/Point", "esri/geometry/Polygon", "esri/geometry/SpatialReference", 'esri/Graphic'] , function(FeatureLayer,Point,Polygon,SpatialReference,Graphic){ var _layer = new FeatureLayer(url,{ mode: FeatureLayer.MODE_ONDEMAND, outFields: ["*"] }); //102100 polygon.spatialReference = new SpatialReference({ wkid: 102100 }); var graphics = new Graphic({geometry: polygon}); const addFeature = { addFeatures: [graphics] }; _layer.applyEdits(addFeature).then(function(editsResult) { if (editsResult.addFeatureResults.length > 0) { const objectId = editsResult.addFeatureResults[0].objectId; } }).catch(function(error) { console.error("[ applyEdits ] FAILURE: ", error.code, error.name, error.message); console.log("error = ", error); }); }) } </script> </head> <body> <a href="#" onclick="addFeature()">添加图元</a> </body> </html>
最后效果: