在Vue无服务器Web应用程序中不会为OpenLayers地图对象触发事件
本文介绍了在Vue无服务器Web应用程序中不会为OpenLayers地图对象触发事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个Vue无服务器Web应用程序,它有一个OpenLayers地图,它在mounted
中初始化,并由ImageWMS
层填充,ImageWMS
层由函数更新。我在每个更新参数操作之后调用this.map.renderSync()
,然后在所有层的呈现完成时尝试执行另一个函数(如rendercomplete
事件描述的那样加载和呈现所有层)。令我惊讶的是,当贴图最初在mounted
中呈现时,this.map.on("rendercomplete",this.myFunction())
只会触发一次。我遗漏了什么?如果且仅当我更新所有层的参数后,所有层都已加载并渲染,我如何才能执行this.myFunction()
?
推荐答案
this.map.on
有两个参数,事件名称为字符串("rendercomplete"
)和一个回调函数。您的回调函数是this.flagCallback
,没有()
。您可以看到一次控制台日志记录,因为该函数在创建侦听器时调用一次。
这篇关于在Vue无服务器Web应用程序中不会为OpenLayers地图对象触发事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!