在wxml中定义map及其属性markers,如下:
< map id = "map" markers = "{{markers}}" show-location style = "width: 100%; height: 300px" bindregionchange = "bindRegionChange" controls = "{{controls}}" ></ map > |
在js中使用setData更新markers数据后,地图上的markers并没有刷新,残留了上一次的markers。之前还没有这种问题,是不是基础库更新造成的bug呢?
网友回复:
也同样遇到这个问题,微信6.5.14版本还是正常的,微信一升级到最新版本就不行了,求解?
已知问题,每次更新的marker id都设置成数组下标可以暂时解决,我们尽快修复
我这里设置了,还是解决不了
按照2楼官方的方案,设置marker的id为数组下标,是没问题的。@阳关下的岁月,你再查查问题看。
var marks = [];
markersData = res.data["data"];
for (var item in markersData)
{
console.log("item=" + item);
var markerItem = {
id: item,
latitude: markersData[item].latitude,
longitude: markersData[item].longitude,
iconPath: "../img/marker.png",
width: 22,
height: 32
};
marks.push(markerItem);
}
上面是我的源码,设置了ID为下标,还是不行
建议确定下item是不是整数数值,字符串是不行的
是整数值,
。这个问题在开发工具那个环境下运行是没问题的,在线上或者用手机预览的时候会有问题。