openLayer移除Feature时报错

问题

在功能中,点击起点按钮则在地图中标记“起点”图标,当再次点击起点按钮时需要先清空之前的“起点”图标,再重新添加。

但此时控制台报错了:

错误代码:
在添加点之前,先执行了vectorSource.clear(),导致remove时,vectorSource.getFeatures()其实是空数组[ ]。

if (breakFeature) vectorSource.removeFeature(breakFeature)

修改为如下代码:
需要判断vectorSource.getFeatures()存在长度,再执行remove。

if (breakFeature && vectorSource.getFeatures() && vectorSource.getFeatures().length) vectorSource.removeFeature(breakFeature)
THE END
posted @   ZerlinM  阅读(198)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示