onShareAppMessage调用成功或失败后不执行事件BUG,请官方解决
发布于 6 年前 作者 junpan 1838 次浏览 来自 问答

onShareAppMessage: function () {

var cs=this.data.cs;

var that=this;

wx.getClipboardData({

success: function(res) {

var cs=res.data;

that.setData({

cs:cs

})

},

fail: function(res) {},

complete: function(res) {},

})

return{

success: function (res) {

var shareTicket = res.shareTickets;

if (shareTicket != null) {

wx.navigateTo({

url: ‘/pages/zhuanfashequn/sq?ipsb=’ + that.data.cs,

success: function (res) { },

fail: function (res) { },

complete: function (res) { },

})

}

else if(shareTicket==null) {

wx.navigateTo({

url: ‘/pages/zhuanfahaoyou/hy?ipsb=’ + that.data.cs,

success: function (res) { },

fail: function (res) { },

complete: function (res) { },

})

}

},

fail: function () {

wx.showModal({

title: ‘XXX’,

content: ‘XXXXXXXX’,

showCancel: false,

cancelText: ‘’,

cancelColor: ‘’,

confirmText: ‘OK’,

confirmColor: ‘’,

success: function (res) { },

fail: function (res) { },

complete: function (res) { },

})

}

}

}

代码如上,在编辑器测试正常,但真机测试中会出现以下情况:

取消转发或者成功转发后,不自动执行fail或success对应的事件,需要页面隐藏或出现后才会执行一次(如切换到其他页面会执行或直接关闭小程序重新打开会执行)

这个现象在我的手机微信更新最新版本后出现,不知是否与新版微信有关。

5 回复

那请问现在有什么方法可以补救吗?

你好,你的小程序会在分享完之后,什么事件都触发不了吗,包括跳转,打印会显示已经触发了事件,但是实际没有触发

现在没有办法,是6.6.2引起的,我们会在近日修复这个问题

你好,问题已复现,我们会在后续版本中进行修复。

对的,实际是没有触发的,而且在转发后假如转发人没有及时去触发(通过切换别的tabbar或者调用到onshow onhide)的话,被转发人点击转发过来的小程序卡片打开小程序,会触发跳转,这是很奇怪的体验。

回到顶部