你好,
我有不同类型的层添加到我的地图,我如何才能找到哪个层调用了弹出框,我使用watchUtils来查找当弹出框是可见的,但我无法找到哪个层调用了弹出框
watchUtils.when(视图。popup, "visible", function(evt){//Code});
我使用的是Arcgis Javascript 4.24版本。请指导我如何才能找到图层信息
解决了!转到解决方案。
你可能有几种方法可以做到这一点,但其中一种是使用反应式效用器。
https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html
你可以观看弹出窗口的可见道具,然后是selectedFeature,并检查该特征来自哪个层。
Watch (() => view.popup。可见,()=> {watch(() => view.popup。selectedFeature, (selectedFeature) => console.log("源层",selectedFeature.layer), {once: true});});
下面是一个示例,展示如何使用它。
https://codepen.io/odoe/pen/GRGVBgr?editors=1000
你甚至不需要看弹出窗口可见,只看selectedFeature,但如果你分页,它并不总是打开弹出窗口的那个。
你可能有几种方法可以做到这一点,但其中一种是使用反应式效用器。
https://developers.arcgis.com/javascript/latest/api-reference/esri-core-reactiveUtils.html
你可以观看弹出窗口的可见道具,然后是selectedFeature,并检查该特征来自哪个层。
Watch (() => view.popup。可见,()=> {watch(() => view.popup。selectedFeature, (selectedFeature) => console.log("源层",selectedFeature.layer), {once: true});});
下面是一个示例,展示如何使用它。
https://codepen.io/odoe/pen/GRGVBgr?editors=1000
你甚至不需要看弹出窗口可见,只看selectedFeature,但如果你分页,它并不总是打开弹出窗口的那个。