map组件的markers不刷新问题

发布于 7 年前作者 yangding3254 次浏览最后编辑 7 年前来自 ask

在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呢?

9 回复
dengxiulan
dengxiulan1 楼6 年前

建议确定下item是不是整数数值,字符串是不行的

liyao
liyao2 楼6 年前

我这里设置了,还是解决不了

nzhao
nzhao3 楼6 年前

已知问题,每次更新的marker id都设置成数组下标可以暂时解决,我们尽快修复

panjie
panjie4 楼6 年前

请问楼主解决了吗,我也遇到了这个问题,求解

wzou
wzou5 楼6 年前

妈蛋,我也遇到这个问题了,ver 1.6.6 版本 还没解决这个bug

qsu
qsu6 楼6 年前

按照2楼官方的方案,设置marker的id为数组下标,是没问题的。@阳关下的岁月,你再查查问题看。

xiamao
xiamao7 楼6 年前

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为下标,还是不行

duanli
duanli8 楼6 年前

是整数值,

。这个问题在开发工具那个环境下运行是没问题的,在线上或者用手机预览的时候会有问题。

taoyang
taoyang9 楼5 年前

也同样遇到这个问题,微信6.5.14版本还是正常的,微信一升级到最新版本就不行了,求解?