有没有办法终止onShareAppMessage或用户分享方法
发布于 5 年前 作者 tao92 5634 次浏览 来自 问答

用户场景

进入小程序后 =》 立即点击了分享按钮

需求说明

页面的分享信息未配置成功,如果用户再配置成功前点击了分享按钮,会导致分享信息不正确

右上角的分享还好解决, wx-hide一下,但是页面里的分享按钮就不好控制了

所以,有没有办法可以终止用户分享行为,例如在onShareAppMessage  里 return Promise.reject掉,这样就触发分享行为

不然,我们遇到很多情况多少,页面分享信息还没配置完,用户就点了分享按钮

用户根本不知道什么时候分享配置成功,用户一点分享按钮就弹出分享界面,根本不能提示用户

3 回复

页面里面不是更好控制吗?隐藏或者禁用

我现在也遇到了这个问题。当触发了onShareAppMessage后,我需要用promise去获取一个分享链接,但是一旦触发了onShareAppMessage就再也没有办法终止了。我找了全网也没有解决方案,尝试return false, void, null, undefined都不行。

虽然可以在页面中先request然后根据结果是否显示分享按钮,但会造成两种非常不好的用户体验:

1、每次加载页面,有没有必要都要先request一次,大大增加了服务器负担;

2、每次要分享的时候先要点击一个“获取分享链接”按钮,然后再点击“分享”,这实在用户体验太差了……

官方有没有什么说法?

如果是通过按钮触发的转发,可以在信息配置成功之前限制转发按钮不可点击或隐藏;也可以同时显示右上角的转发和显示。

回到顶部