收藏
回答

map bindmarkertap返回的markerId不是我传递的id

框架类型 问题类型 操作系统 工具版本
小程序 Bug Windows 1.03.2006090

map bindmarkertap返回的markerId不是我传递的id 返回了 一个 markerId:90000000

回答关注问题邀请回答
收藏

5 个回答

  • 社区技术运营专员-CJiang
    社区技术运营专员-CJiang
    2020-08-29

    你好,麻烦提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2020-08-29
    有用
    回复 2
  • Rui
    Rui
    2020-12-04

    markerid的值类型必须为number类型,并且handbindmarkertap中参数e,他会将markerid存放在detail属性对象中和e对象当中,所以在真机测试都可以通过。

    2020-12-04
    有用 1
    回复
  • 疏亮是淑靓
    疏亮是淑靓
    04-11

    真机上哪怕是字符串也是正常返回的,但是测试的时候得要number类型才行,可以自定义之后导入进去

    04-11
    有用
    回复
  • 我自静默向韶华。
    我自静默向韶华。
    2020-09-08

    我也是这样 id为字符串类型 返回的是900000开头的。要是换成number类型的就没问题了。但是我们绑定的id一直都是guid类型的。难搞

    2020-09-08
    有用
    回复 2
    • xxx
      xxx
      2021-03-11
      id怎么换成number类型
      2021-03-11
      回复
    • 远行者
      远行者
      2021-06-04回复xxx
      在map组件中 markers数组的id 一定是number类型,点击时候才会找到,不然如上所说 9000 开头的id。
      如下代码:

      for (var i = 0; i < res.data.length; i++) {
                mks.push({ // 获取返回结果,放到mks数组中
                  title: res.data[i].title,
                  id: Number(res.data[i].id),
                  latitude: res.data[i].location.lat,
                  longitude: res.data[i].location.lng,
                  iconPath: "../../image/mk.png", //图标路径
                  width: 22,
                  height: 22,
                  _distance:res.data[i]._distance
                })
              }
      2021-06-04
      回复
  • 柯
    2020-08-28

    ios 真机上是好的 安卓还没试

    2020-08-28
    有用
    回复
登录 后发表内容
问题标签