微信分享功能踩坑(异步数据)

发布于 2022-09-06 09:20:52 字数 559 浏览 21 评论 0

技术栈:vue + vue-router + vuex
问题描述:
分享某个页面是总是显示的:页面title + url链接 + 默认的图片
但我想要的是自定义title,desc,img,shareData里面的数据都是后台获取的,我想可能是因为数据是异步的,还没有初始化完成的时候wx.onMenuShareAppMessage就执行了,因为我在控制台看到wx.ready()里的代码比数据get的代码更先执行,就怀疑这个是这个原因
======================原来的问题
我用的vue框架,这种情况改怎么处理,wx.onMenuShareAppMessage没有传入正确的参数会默认用原始的方式分享,我想用我传入的参数,怎么让 wx.onMenuShareAppMessage等shareData初始化完毕

wx.ready(()=>{
  shareData = { //异步获取
    title: '', 
    desc: '',
    imgUrl: '',
    link: '',
  };
  wx.onMenuShareAppMessage(shareData)
})

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

删除会话 2022-09-13 09:20:52

最终问题还是解决了,但我还不是特别清楚原因,我是这样解决的:
在需要分享的页面重新请求签名即wx.config
参考:vue2实现微信分享坑点

飘落散花 2022-09-13 09:20:52

我之前的做法是wx.config放在main.js里执行,然后存相应的数据到Vuex,反正这样做微信支付是没什么问题的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文