markertap(e) {

//点击anotation标记事件

let item = this.data.mapparklist[e.markerId];

var obj = arguments[0];

console.log(obj.markerId);

for(var i = 0;i<this.data.markers.length;i++){

if (this.data.markers[i].id == obj.markerId){

this.data.markers[i].iconPath = "/images/icon/car.png";

this.data.markers[i].width = 80;

this.data.markers[i].height = 80;

break;

}

}

console.log(this.data.markers);

如上,我希望在点击地图上mark后改变其宽高和iconpath,设置后data里面数据改变了,但界面没有刷新。

求大神指点是mark一旦创建就不能改变尺寸或者更换iconpath还是我设置的方法不对?


展开全部
收起
2回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • DarrienLi

    10人对此回答表示赞同

    可以不用setData改变数据?!!!∑(゚Д゚ノ)ノ

    展开
    10
    3回复
    发布于 6年前

    评论(3)

    收起评论

    • 孤独癌患者 2019-03-01 09:19

      要获取整个mapparklist修改mapparklist[e.markerId]然后替换整个mapparklist

      回复
    • 三层楼 2019-03-03 11:15

      markertap(e){

      回复
    • Hazel 2019-03-05 17:39

      最后用setData试试

      回复
  • Miroslavkk

    6人对此回答表示赞同

    明白你的意思,也就是要修改markers中其中一个,必须把markers重新set下,试了下有效果,多谢????!

    展开
    6
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部