收藏
回答

Promise风格showModal不支持订阅消息

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug wx.showModal 微信iOS客户端 8.0.33 2.30

这样是有效的:

wx.showModal({
  showCancel:false,
  title:'即将订阅消息',
  content:'即将订阅消息',
  success:()=>{
    wx.requestSubscribeMessage({tmplIds:['消息ID']})
  }
});

这样是无效的:

await wx.showModal({
  showCancel:false,
  title:'即将订阅消息',
  content:'即将订阅消息',
});
wx.requestSubscribeMessage({tmplIds:['消息ID']})
回答关注问题邀请回答
收藏

3 个回答

  • 🍪
    🍪
    01-29
    wx.showModal({
      showCancel:false,
      title:'即将订阅消息',
      content:'即将订阅消息',
      success:()=>{
        wx.requestSubscribeMessage({tmplIds:['消息ID']})
      }
    });
    试了这样写,在ios会报错没有主动点击
    
    01-29
    有用
    回复
  • 陌上吟归雪
    陌上吟归雪
    01-08

    我用showModal,弹窗还是不会弹,但是它触发了订阅消息的确定事件,这个是什么原因呀,有解决方案吗


    01-08
    有用
    回复
  • Code Weaver
    Code Weaver
    2023-03-10

    因为第二种被判断为了 不是手动点击触发,而是自动触发了?

    不是这样写么?

    wx.showModal({
      showCancel:false,
      title:'即将订阅消息',
      content:'即将订阅消息',
      success: async () =>{
        await wx.requestSubscribeMessage({tmplIds:['消息ID']})
      }
    });
    
    2023-03-10
    有用
    回复 1
    • 小白
      小白
      2023-03-22
      这是订阅消息的Promise,我提的是showModal的Promise。被判断为非点击触发了
      2023-03-22
      回复
登录 后发表内容