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

添加新要素到图层

_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)
                    },
                });
            })
        },
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)
                    },
                });
            })
        },

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值