ArcGis 4.0 Javascript API 弹出窗口显示事件
ArcGis 4.0 Javascript API events when pop up shows
我正在使用 ArcGIS JavaScript API 4.0 来显示给定区域的检修孔。我正在使用我们的 GIS 服务生成要素层。但是,必须单独查询该检修孔的所有相关照片。我的想法是为弹出窗口打开时找到一个事件处理程序,然后以某种方式查询数据库中的这些照片并将链接动态放置在弹出模板对象中。以下是问题:
- 弹出窗口打开时没有特定的事件处理程序。仅在弹出窗口中定义的操作。
- 就算有我怎么获取用户点击的沙井引用?
- 如何在弹出模板的内容 属性 下动态添加媒体?
这是用户点击地图时的事件处理程序
view.on("click", function(evt){
console.log("test pop up handler");
});
添加要素图层时和弹出窗口上的操作都有事件处理程序。这是我需要添加动态媒体的弹出模板:
var manholeTemplate = new PopupTemplate({
title: 'Smoke : {Label}',
content:
[{
type:"media",
mediaInfos: [{
title: "<b> Related Photos </b>",
type: "image",
value:{
sourceURL: "https://xxxxx.xxxx.getPhoto.php?id=09fsgfsfgE"
}
}]
}]
});
使用watching properties功能观看"view.popup.visible"属性。
弹出窗口打开后,您可以使用 popup.features
获取弹出窗口指向的功能
您可以在 sourceURL
字符串中使用 curly 括号内的属性名称,API 将自动获得基于 url在点击的属性上。
示例地图在这里显示了以上三项(打开浏览器控制台,然后单击一个要素):https://jsfiddle.net/gavinr/1jLmfLLL/
我正在使用 ArcGIS JavaScript API 4.0 来显示给定区域的检修孔。我正在使用我们的 GIS 服务生成要素层。但是,必须单独查询该检修孔的所有相关照片。我的想法是为弹出窗口打开时找到一个事件处理程序,然后以某种方式查询数据库中的这些照片并将链接动态放置在弹出模板对象中。以下是问题:
- 弹出窗口打开时没有特定的事件处理程序。仅在弹出窗口中定义的操作。
- 就算有我怎么获取用户点击的沙井引用?
- 如何在弹出模板的内容 属性 下动态添加媒体?
这是用户点击地图时的事件处理程序
view.on("click", function(evt){
console.log("test pop up handler");
});
添加要素图层时和弹出窗口上的操作都有事件处理程序。这是我需要添加动态媒体的弹出模板:
var manholeTemplate = new PopupTemplate({
title: 'Smoke : {Label}',
content:
[{
type:"media",
mediaInfos: [{
title: "<b> Related Photos </b>",
type: "image",
value:{
sourceURL: "https://xxxxx.xxxx.getPhoto.php?id=09fsgfsfgE"
}
}]
}]
});
使用watching properties功能观看"view.popup.visible"属性。
弹出窗口打开后,您可以使用 popup.features
获取弹出窗口指向的功能
您可以在
sourceURL
字符串中使用 curly 括号内的属性名称,API 将自动获得基于 url在点击的属性上。
示例地图在这里显示了以上三项(打开浏览器控制台,然后单击一个要素):https://jsfiddle.net/gavinr/1jLmfLLL/