- vue3 使用JS-SDK ,调用分享成功 但是分享还是纯链接?
https://sts.sumecdtx.com/liveuser/live?roomNo=082750ECBE6A49309D2CAD1328846A8E 这是地址 // src/hooks/useWechatShare.ts import { ref, onMounted } from 'vue' import { getWechatSignature } from '@/api/index' // 微信分享配置接口 interface WechatShareConfig { title: string desc?: string link?: string imgUrl?: string timelineTitle?: string timelineImgUrl?: string } export function useWechatShare(initialConfig: WechatShareConfig) { const isWechatReady = ref(false) // 获取签名信息并初始化微信配置 const initWechatConfig = async () => { try { const url = window.location.href.split('#')[0] const res = await getWechatSignature({ url }) const { signature, nonceStr, timestamp, appId } = res.result wx.config({ debug: false, appId, timestamp, nonceStr, signature, jsApiList: [ 'updateAppMessageShareData', 'updateTimelineShareData', 'showMenuItems' ] }) wx.ready(() => { isWechatReady.value = true console.log('微信 JSSDK 初始化完成') wx.updateAppMessageShareData({ title: `${initialConfig.title}测试`, desc: initialConfig.desc || '', link: initialConfig.link || window.location.href, imgUrl: initialConfig.imgUrl || '', success: () => { console.log('自定义分享给朋友信息成功') }, fail: (err: any) => { console.error('分享给朋友失败:', err) } }) wx.updateTimelineShareData({ title: `${initialConfig.timelineTitle || initialConfig.title} 测试`, link: initialConfig.link || window.location.href, imgUrl: initialConfig.timelineImgUrl || initialConfig.imgUrl || '', success: () => { console.log('自定义分享到朋友圈信息成功') }, fail: (err: any) => { console.error('分享到朋友圈失败:', err) } }) wx.hideMenuItems({ menuList: ["menuItem:share:qq"] }); }) wx.error((err: any) => { console.error('微信 config 验证失败:', err) }) } catch (error) { console.error('获取微信签名失败:', error) } } onMounted(() => { if (typeof wx !== 'undefined') { initWechatConfig() } else { console.warn('微信 SDK 未加载') } }) return {} } [图片][图片]
06-13 - vue3 使用JS-SDK ,调用分享成功了但是没有弹出分享给好友或者朋友圈页面 ?
// src/hooks/useWechatShare.ts import { ref, onMounted } from 'vue' import { getWechatSignature } from "@/api/index"; // 微信分享配置接口 interface WechatShareConfig { title: string desc?: string link?: string imgUrl?: string timelineTitle?: string timelineImgUrl?: string } export function useWechatShare(config: WechatShareConfig) { const isWechatReady = ref(false) // 获取签名信息并初始化微信配置 const initWechatConfig = async () => { try { let url = window.location.href.split('#')[0] const res = await getWechatSignature({url}) const { signature, nonceStr, timestamp, appId } = res.result wx.config({ debug: false, appId, timestamp, nonceStr, signature, jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData'] }) wx.ready(() => { isWechatReady.value = true console.log('已注册') }) wx.error((err: any) => { console.error('微信 config 验证失败:', err) }) } catch (error) { console.error('获取微信签名失败:', error) } } // 分享给朋友 const shareToFriend = () => { if (!isWechatReady.value) { alert('微信 SDK 尚未准备好') return } try { wx.updateAppMessageShareData({ title: config.title, desc: config.desc || '', link: config.link || window.location.href, imgUrl: config.imgUrl || '', success: () => { console.log('分享给朋友成功') }, fail: (err: any) => { console.error('分享给朋友失败:', err) } }) } catch (error) { console.log(error) } } // 分享到朋友圈 const shareToTimeline = () => { if (!isWechatReady.value) { alert('微信 SDK 尚未准备好') return } wx.updateTimelineShareData({ title: config.timelineTitle || config.title, link: config.link || window.location.href, imgUrl: config.timelineImgUrl || config.imgUrl || '', success: () => { console.log('分享到朋友圈成功') }, fail: (err: any) => { console.error('分享到朋友圈失败:', err) } }) } onMounted(() => { if (typeof wx !== 'undefined') { initWechatConfig() } else { console.warn('微信 SDK 未加载') } }) return { shareToFriend, shareToTimeline } }
06-11