arcgis js4.x在geojson数据上点击显示弹窗,并添加删除按钮
- 实例geojsonLayer时添加属性popupTemplate
popupTemplate: {
title: action,
content: '点击了'
}
- 设置title用于查询到多个graphic时能够区分
title: function(event) {
return popupTile[action] + event.graphic.getAttribute('OBJECTID')
}
- 设置actions属性来创建删除按钮
actions:[
{
title: '删除',
id: 'deleteGraphic',
className: 'esri-icon-trash'
}
]
- 在map上监听popup上的操作,然后调用对应的方法
this.mapView.popup.on("trigger-action", event => {
const { id } = event.action
if(id === 'delete-graphic')
this.deleteGraphic()
})
- 删除指定位置的graphic的方法
deleteGraphic() {
const selectedFeature = this.mapView.popup.selectedFeature
const { layer } = selectedFeature
layer.applyEdits({
deleteFeatures: [selectedFeature]
}).then(res => {
console.log(res)
})
},
完整代码
// 创建弹窗模板
const popupTemplate = {
title: function(event) {
return popupTile[action] + '-------' + event.graphic.getAttribute('OBJECTID')
},
actions:[
{
title: '删除',
id: 'delete-graphic',
className: 'esri-icon-trash'
}
]
}
// 把模板设置到geojsonLayer上
const GeojsonLayer = new esri.GeoJSONLayer({
url: url,
copyright: 'RHgis',
id: layerID,
renderer: customRenderer || renderer,
popupTemplate
})
// 监听popup上的按钮事件
this.mapView.popup.on("trigger-action", event => {
console.log(event)
const { id } = event.action
if(id === 'delete-graphic')
this.deleteGraphic()
})
// 删除
deleteGraphic() {
const selectedFeature = this.mapView.popup.selectedFeature
const { layer } = selectedFeature
layer.applyEdits({
deleteFeatures: [selectedFeature]
}).then(res => {
console.log(res)
})
},
arcgis js4.x在geojson数据上点击显示弹窗,并添加删除按钮的更多相关文章
- 弹框勾选datatable中的数据,点击保存后添加到另一个表中,同一个页面
需求描述:做编辑的时候,点击添加按钮,弹出数据表table2,勾选弹出框中的数据,点击保存后能够添加到table1中,并且已经被添加到table1中的数据,在弹出框中显示已选,checkbox隐藏:t ...
- ArcGIS API for Flex实现GraphicsLayer上画点、线、面。
目的: ArcGIS API for Flex实现GraphicsLayer上画点.线.面. 准备工作: 1.这次地图数据就用Esri提供的http://server.arcgisonline.com ...
- ArcGIS 10——地理数据库管理GIS数据
写本文的最初意向是当前正在进行的项目中有实现ESRI版本化数据管理的功能模块,碰到一些棘手的问题,几经周折还是决定系统学习ArcGIS10的帮助文档.(文章摘抄的比较多) 地理数据库是用于保存数据集集 ...
- Leaflet入门:添加点线面并导入GeoJSON数据|Tutorial of Leaflet: Adding Points, Lines, Polygons and Import GeoJSON File
Web GIS系列: 1.搭建简易Web GIS网站:使用GeoServer+PostgreSQL+PostGIS+OpenLayers3 2.使用GeoServer+QGIS发布WMTS服务 3.使 ...
- 带你剖析WebGis的世界奥秘----Geojson数据加载(高级)(转)
带你剖析WebGis的世界奥秘----Geojson数据加载(高级) 转:https://zxhtom.oschina.io/zxh/20160819.html 编程 java 2016/08/ ...
- 使用ArcGIS Server发布我们的数据
原文:使用ArcGIS Server发布我们的数据 引言 上一篇我们已经安装好了ArcGIS体系的服务软件,这一篇将介绍如何把我们自己的数据通过ArcGIS Server发布出去,并且能够通过Web页 ...
- 带你剖析WebGis的世界奥秘----Geojson数据加载(高级)
前言:前两周我带你们分析了WebGis中关键步骤瓦片加载+点击事件(具体的看前两篇文章),下面呢,我带大家来看看Geojson的加载及其点击事件 Geojson数据解析 GeoJSON是一种对各种地理 ...
- 使geoJSONLayer能够加载两种数据类型的geojson数据
问题描述 在使用geoJSONLayer加载geojson数据时,官方文档只支持单一类型的geojson数据加载,当一个geojson数据中出现两种类型的数据时可以尝试一下方法进行解决 本场景为:点击 ...
- C#工业物联网和集成系统解决方案的技术路线(数据源、数据采集、数据上传与接收、ActiveMQ、Mongodb、WebApi、手机App)
目 录 工业物联网和集成系统解决方案的技术路线... 1 前言... 1 第一章 系统架构... 3 1.1 硬件构架图... 3 1.2 ...
随机推荐
- C++指向函数的指针数组
可以定义一个指针,指向一个函数,还 可以定义一个指向函数的指针数组,每个元素都是一个指向函数的指针,不过,它们指向的函数的格式都是相同的. 代码如下 //指向函数的指针数组 #include<i ...
- Go版本依赖--伪版本
目录 1.简介 2. 什么是伪版本 3. 伪版本风格 4. 如何获取伪版本 1.简介 在go.mod中通常使用语义化版本来标记依赖,比如v1.2.3.v0.1.5等.因为go.mod文件通常是go命令 ...
- Nginx location 和 proxy_pass路径配置详解
目录 一.Nginx location 基本配置 1.1.Nginx 配置文件 1.2 .Python 脚本 二.测试 2.1.测试 location 末尾存在 / 和 proxy_pass末尾存在 ...
- 经典深度学习CNN总结 - LeNet、AlexNet、GoogLeNet、VGG、ResNet
参考了: https://www.cnblogs.com/52machinelearning/p/5821591.html https://blog.csdn.net/qq_24695385/arti ...
- Mysql for Mac 安装及环境配置
一.下载及安装 首先去官网下载mac对应版本的Mysql,尾缀为.dmg的程序包 下载地址:https://dev.mysql.com/downloads/mysql/ 下载完毕后,一步步傻瓜式安装即 ...
- 【CSS】计数器
抄自B站Up主CodingStartup起码课 <!DOCTYPE html> <html lang="en"> <head> <meta ...
- Mysql force index和ignore index 使用实例
前几天统计一个sql,是一个人提交了多少工单,顺便做了相关sql优化.数据大概2000多w. select CustName,count(1) c from WorkOrder where Creat ...
- VSCode——滚动鼠标控制字体大小
第一步:找到设置 文件-->首选项-->设置 第二步:打开settings.json文件 第三步:在settings.json文件中添加 "editor.mouseWheelZo ...
- rtsp->rtmp 推流直播 Plan B
上篇文章我们谈到使用 EasyDarwin 推流后 前端HTML播放器 播放无画面的情况,找了各种播放器都服务正常解决,但使用VLC却能正常播放的问题,我们尝试了很久最后另辟蹊径,找到 nginx安装 ...
- Python - 面向对象编程 - __init__() 构造方法
什么是构造方法 在创建类时, 可手动添加一个 __init__() 方法,称为构造方法,这是一个实例方法 构造方法用于创建实例对象时使用,每当创建一个类的实例对象时,Python 解释器都会自动调 ...