vue中使用geoscene无法出现弹窗
项目场景:
平日对地图加载使用不复杂的情况下,我通常采用leaflet去加载地图做一些简单的操作。但是最近需要用到arcgis发布的地图服务加载三维场景,于是又用回了geoscene(arcgis国产化)。这下暴露出很多的问题,都是由于自己对geoscene在vue中引入以及api使用不熟练导致的,其中这个绑定注记或点击出现弹窗的问题困扰了我很久。。。
问题描述
在询问了deepseek和查阅了网上资料,我一直把问题聚焦在是不是自己的popupTemplate写法不对或者如网上说的没有将view的popupEnabled绑定为flase。但这两种都不是我无法出现弹窗的原因。
甚至在我后期的测试中如果把popupEnabled绑定为flase反而无法出现弹框。我持续测试都无法出现弹窗。看到自己有把geoscene的标志隐藏的css代码,想着是不是这个隐藏顺便把弹窗给隐藏了(穷途末路下的猜测)。我把这个样式代码删掉后,发现此时确实点击能出现弹框的内容,但是弹框的样式和位置不对。此刻我终于明白了,问题出在我没有加载geoscene的main.css
解决方案:
所以,在我们使用npm安装完geoscene时,不要忘记在main.ts
里引入main.css。
import '@geoscene/core/assets/geoscene/themes/light/main.css'
自此,一直困扰我的问题终于解决了,哎~