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)