arcgis api for js4.x 向要素服务添加、删除要素

 
function saveDk() {
            var attr = {
                "AREACODE": 11,
                "DKBH": 4005
            };
            var inputfeature = {
                "attributes": attr,
                "geometry": drawGraphic
            };
            var graphic = new Graphic(inputfeature);
            var dkbh = null;
            var queryTask = new QueryTask({
                url: gyydFeatureServer
            });
            var query = new Query();
            query.where = "DKBH='" + dkbh + "'";
            query.returnGeometry = true;
            query.outFields = ["*"];
            queryTask.execute(query).then(function (results) {
                if (results != null) {
                    if (results.features.length > 0) {
                        var gs = results.features;
                        gyydfeatureLayer.applyEdits({ deletedFeatures: [gs] }).then(function (results) {
                            console.log("删除成功!: ", results.addFeatureResults);                         
                        });
                    }
                }
                var param = {
                    addFeatures: [graphic]
                }
                gyydfeatureLayer.applyEdits(param).then(function (results) {
                    console.log("添加成功: ", results);
                    alert("添加成功!!!");
                }).catch(function (error) {
                    console.log("添加失败!!: ", error);
                });
            });
        },
        //删除地块
function deleteDk() {
            //地图上清除
            view.graphics.removeAll();
            //从sde库查找删除
            var dkbh = 45;
            var queryTask = new QueryTask(gyydFeatureServer);
            var query = new Query();
            query.where = "DKBH='" + dkbh + "'";
            query.outFields = ["*"];
            query.returnGeometry = true;
            queryTask.execute(query).then(function (results) {
                console.log(results);
                if (results != null) {
                    if (results.features.length > 0) {
                        var gsId = [];
                        for (var i = 0; i < results.features.length; i++)
                        {
                            gsId.push(results.features[i].attributes.OBJECTID);
                        }
                        gyydfeatureLayer.applyEdits({ deleteFeatures: [{ objectId: gsId }] }).then(function (results) {
                            console.log("删除成功!: ", results.addFeatureResults);
                        }).catch(function (error) {
                            console.log("删除失败!!: ", error);
                        });
                    }
                }
            });
        },
 
tip:插入要素的时候,使用Graphic(features)。删除要素时候用objectId(使用features,删除失败!!)
已邀请:

要回复问题请先登录注册