uni-app 微信分享 onShareAppMessage 方法 return 的对象不生效 但使用百度原生 onShareAppMessage 是可以设置的

uni-app 微信分享 onShareAppMessage 方法 return 的对象不生效 但使用百度原生 onShareAppMessage 是可以设置的

示例代码:

onShareAppMessage(res) {
    if (res.from === 'button') { // 来自页面内分享按钮
        console.log(res.target)
    }
    return {
        title: '自定义分享标题',
        path: '/pages/test/test?id=123'
    }
},

操作步骤:


更多关于uni-app 微信分享 onShareAppMessage 方法 return 的对象不生效 但使用百度原生 onShareAppMessage 是可以设置的的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

问题已确认,目前百度小程存在部分限制,已经联系百度小程序技术人员,近期百度小程序将会发版支持。
https://smartprogram.baidu.com/forum/topic/show/152602

更多关于uni-app 微信分享 onShareAppMessage 方法 return 的对象不生效 但使用百度原生 onShareAppMessage 是可以设置的的实战教程也可以访问 https://www.itying.com/category-93-b0.html


查看相关问题帖子:https://ask.dcloud.net.cn/question/125914 感谢您的反馈!

请问近期有进展吗?大概多久可以解决这个问题呢?或者目前有啥替代方案吗

在uni-app中,微信小程序的onShareAppMessage方法返回对象不生效,通常是由于以下原因:

  1. 生命周期钩子冲突:确保onShareAppMessage是直接定义在Page对象中,而不是在methods或其他嵌套位置。检查是否与组件的生命周期钩子冲突。

  2. 路径格式问题:分享的path需以"/"开头,且路径必须在pages.json中注册。例如:/pages/test/test?id=123

  3. 微信平台差异:uni-app对微信小程序的分享支持可能存在平台差异。如果百度原生可用而微信不生效,尝试在onLoadonShow中动态设置分享内容,或使用条件编译:

// #ifdef MP-WEIXIN
onShareAppMessage(res) {
    return {
        title: '自定义标题',
        path: '/pages/test/test?id=123'
    }
}
// #endif
回到顶部