/** * 微信分享配置工具 */ declare const uni: any; /** * 获取分享配置 * @param userId 用户ID(用于邀请追踪) * @returns 分享配置对象 */ export const getShareConfig = (userId?: number) => { return { title: '壹梵起名 - 传承国学智慧,赋予美好寓意', path: userId ? `/pages/index/index?inviteCode=${userId}` : '/pages/index/index', imageUrl: '', // 可以设置分享图片,留空使用默认截图 }; }; /** * 设置页面分享配置 * 在页面的 onLoad 或 onMounted 中调用 * @param userId 用户ID */ export const setupPageShare = (userId?: number) => { // 显示分享按钮 uni.showShareMenu({ withShareTicket: true, menus: ['shareAppMessage', 'shareTimeline'] }); }; /** * 分享给好友的配置 * 需要在页面中定义 onShareAppMessage 生命周期 */ export const onShareAppMessage = (userId?: number) => { return { title: '壹梵起名 - 传承国学智慧,赋予美好寓意', path: userId ? `/pages/index/index?inviteCode=${userId}` : '/pages/index/index', imageUrl: '', // 可以设置分享图片 }; }; /** * 分享到朋友圈的配置 * 需要在页面中定义 onShareTimeline 生命周期 */ export const onShareTimeline = (userId?: number) => { return { title: '壹梵起名 - 传承国学智慧,赋予美好寓意', query: userId ? `inviteCode=${userId}` : '', imageUrl: '', // 可以设置分享图片 }; }; /** * 从URL参数中获取邀请码 * @param options 页面参数 * @returns 邀请码(用户ID) */ export const getInviteCodeFromUrl = (options: any): string | null => { return options?.inviteCode || null; }; /** * 保存邀请码到本地存储 * @param inviteCode 邀请码 */ export const saveInviteCode = (inviteCode: string) => { try { uni.setStorageSync('invite_code', inviteCode); console.log('保存邀请码:', inviteCode); } catch (e) { console.error('保存邀请码失败:', e); } }; /** * 获取本地存储的邀请码 * @returns 邀请码 */ export const getStoredInviteCode = (): string | null => { try { return uni.getStorageSync('invite_code'); } catch (e) { console.error('获取邀请码失败:', e); return null; } }; /** * 清除本地存储的邀请码 */ export const clearInviteCode = () => { try { uni.removeStorageSync('invite_code'); } catch (e) { console.error('清除邀请码失败:', e); } };