arcgis api for js4.x 图层要素的增删改---使用服务地址的/applyEdits直接进行删除

添加新要素到图层

javascript 复制代码
_addGeo(){
        cosnt self = this
        let url = https://......./featurelayer/某某某图层/3
        let geo = 你新绘制的图形
        let attributes = 你新绘制图形的属性信息
        let addingGraphics = Graphic({
               geometry:geo,
               attributes:attributes
        })
        const pro = self._addToLayer(url , JSON.stringify(addingGraphics).replaceAll("\\", ""))
        Promise.all([pro]).then((result) => {
            const response = JSON.parse(result)
            if (response.addResults != undefined && response.addResults.length > 0) {                   
                self.$message.success("保存成功");
            } else {
                self.$message.error("保存失败,请检查服务。");
            }
            self.mapClear();
        })
},

_addToLayer(url, param) {
            var formData = new FormData();
            formData.append("f", "pjson");
            formData.append("adds", param);
            return new Promise((resolve, reject) => {
                const A= "A"
                const B= "B"
                $.ajax({
                    url: `${url}/applyEdits`,
                    type: "post",
                    async: true,
                    data: formData,
                    processData: false,
                    contentType: false,
                    headers: { //头部信息添加到这里
                        A: A,
                        B: B,
                    },
                    success: function (response) {
                        resolve(response)
                    },
                    error: function (e) {
                        reject(null)
                    },
                });
            })
        },
javascript 复制代码
deletegeo(){
        cosnt self = this
        let url = https://......./featurelayer/某某某图层/3
        let feat= 你要删除的要素
let objs = [feat.attributes.objectid]  //objs是数组,可以删除多个。objectid是服务的标识字段值
 let pro1 = self._delFromLayer(url, objs)
Promise.all([pro1]).then((result) => {
                const response1 = JSON.parse(result[0])
                if (response1.deleteResults != undefined && response1.deleteResults.length > 0 ) {
                    self.$message.success("删除成功。");
                } else {
                    self.$message.error("删除失败,请检查服务。");
                }
            })

},

_delFromLayer(url, param) {
            const self = this
            var formData = new FormData();
            formData.append("f", "pjson");
            formData.append("deletes", param);
            return new Promise((resolve, reject) => {
                const A= "A"
                const B= "B"
                $.ajax({
                    url: `${url}/applyEdits`,
                    type: "post",
                    async: true,
                    data: formData,
                    processData: false,
                    contentType: false,
                    headers: {
                        A: A,
                        B: B
                    },
                    success: function (response) {
                        resolve(response)
                    },
                    error: function (e) {
                        reject(null)
                    },
                });
            })
        },
相关推荐
你是一个铁憨憨3 天前
从 GIS 到 Spatial Agent:MCP 如何重新定义 GIS 的 AI 入口
arcgis·ai·agent·mcp·spatial
码农小旋风6 天前
Claude Code 最佳实践指南
arcgis
兔年鸿运Q小Q17 天前
cesium1.140以上版本加载地形
arcgis·cesium
杨超越luckly17 天前
Agent应用指南:巨幕之下 · 中国 IMAX 影院205城的空间布局
人工智能·arcgis·html·agent·数据可视化
GISerQ.18 天前
DWG格式文件导入到ArcGIS中
arcgis·shp·cad文件·dwg文件
En^_^Joy23 天前
Vue项目创建与入口配置全攻略
前端·vue.js·arcgis
图件制作GIS,储量计算23 天前
补充耕地项目类、非项目类资料清单
arcgis
不在逃避q24 天前
Trae/Vs Code/Cursor命令行无法跑npm命令
前端·arcgis·npm
GISerQ.25 天前
ArcGIS实现矢量拓扑检查与修复
arcgis·拓扑检查·拓扑修复
NutShell Wang25 天前
零依赖架构实战:451个HTML文件如何用63KB平均体积交付3584个交互模块
前端·人工智能·arcgis·npm·开源·html·vibe coding