收藏
回答

open-type="getPhoneNumber" 授权按钮防止重复点击

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug button 客户端 7.0.5 2.4.4

- 当前 Bug 的表现(可附上截图)

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>

授权按钮可快速点击多次,在第一次未弹出授权询问框的时候再次点击,根据bindgetphonenumber回调的断点发现errMsg是用户拒绝授权,想知道怎么防止用户快速多次点击。

- 预期表现

    尝试过增加点击标识、disabled属性等防止,怎奈此按钮点击响应的事件是小程序组件自带的,根本阻止不了,而且按说官方应该自带防重复点击才合理啊,请问大家怎么处理的

- 复现路径

    getPhoneNumber授权按钮快速点击多次,在第二次点击时候,根据bindgetphonenumber调的断点发现errMsg是用户拒绝授权


- 提供一个最简复现 Demo




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

2 个回答

  • 团子丶
    团子丶
    2019-10-29

    请问楼主,你这个问题有解决吗?如果解决了,可以说下你的解决思路吗?

    2019-10-29
    赞同
    回复 3
    • oday you
      oday you
      2019-10-29
      不好意思这个问题一直搁置,没有想到有效的办法
      2019-10-29
      回复
    • 团子丶
      团子丶
      2019-10-29回复oday you
      哎,官方也不出来回复下,真的很头疼
      2019-10-29
      回复
    • 信仰
      信仰
      2019-12-26
      请问楼主,你这个问题有解决吗?如果解决了,可以说下你的解决思路吗?
      2019-12-26
      回复
  • 猎人
    猎人
    2019-07-11

    disabled='{{disabled}}' loading='{{loading}}'

    按钮的属性了解下   这两个值可以在js文件中定义和改变

    2019-07-11
    赞同
    回复 5
    • oday you
      oday you
      2019-07-12
      谢谢回复。 之前尝试过这样处理,但是问题在于这两个属性值的切换我们只能放在bindgetphonenumber回调或者多绑定一个bindtap进行,但是第二次点击的时候还没有进入第一次点击的bindgetphonenumber回调,执行时序有问题
      2019-07-12
      回复
    • 猎人
      猎人
      2019-07-12回复oday you
      可以考虑下这种button和label配合起来使用的 希望能够解决
      2019-07-12
      回复
    • 猎人
      猎人
      2019-07-12回复oday you

      <button bindtap="handleTapShareButton" open-type="getPhoneNumber"  id="share-button">

              </button>

              <label for="share-button>获取手机号</label>


      2019-07-12
      回复
    • oday you
      oday you
      2019-07-12回复猎人
      不好意思我没太明白你的意思, 能详述下吗。 另外想问下 您做的小程序open-type存不存在这样的问题,万一是我用错了呢 哈
      2019-07-12
      回复
    • 猎人
      猎人
      2019-07-12回复oday you
      bindgetphonenumber="getPhoneNumber" 就是可以把这个事件换成点击事件 多用一个label标签 可以了解下小程序的label标签 试试这种方法能解决问题不
      2019-07-12
      回复
登录 后发表内容