uniapp npm安装形式 全局分享和按钮分享设置

全局分享方法

新建一个shareUtil.ts方法

import { storageConfig } from '@/config/storageConfig';
export default {data() {return {miniShareOptions: {title: '标题',path: '/pages/tabbar/index?inviteCode=',summary: '描述',imageUrl: '/userPages/static/img/invitation_h_bg.png',},shareCover: '/userPages/static/img/invitation_h_bg.png',};},// 发送给朋友onShareAppMessage() {const userInfoStr = uni.getStorageSync(storageConfig.userStoreKey);const userInfo = JSON.parse(userInfoStr);console.log(userInfo, 'userInfo');const inviteCode = userInfo?.userInfo?.inviteCode || '';console.log(inviteCode, 'inviteCode');return {...this.miniShareOptions,path: `/pages/tabbar/index?inviteCode=${inviteCode}`,query: `inviteCodeQQ=${inviteCode}`,imageUrl: this.shareCover,};},onShareTimeline() {const userInfoStr = uni.getStorageSync(storageConfig.userStoreKey);const userInfo = JSON.parse(userInfoStr);console.log(userInfo, 'userInfo');const inviteCode = userInfo?.userInfo?.inviteCode || '';console.log(inviteCode, 'inviteCode');return {title: '标题',path: `/pages/tabbar/index?inviteCode=${inviteCode}`,query: `inviteCodeQQ=${inviteCode}`,imageUrl: '/userPages/static/img/invitation_h_bg.png',};},
};

全局配置

import { createSSRApp } from 'vue';
import App from './App.vue';
import './style/pulic.css';
import pinia from './store';
import uviewPlus from 'uview-plus';
import { initRequest } from '@/utlis/http';
import { logEnvInfo } from '@/utlis/envUtils';
import shareUtil from '@/utlis/shareUtil';
export function createApp() {const app = createSSRApp(App);// 打印环境信息(仅在开发环境)logEnvInfo();app.use(pinia);app.use(uviewPlus);initRequest();app.mixin(shareUtil);return {app,};
}

页面按钮分享配置

在onLoad中设置onShareAppMessage,不然无法覆盖全局分享设置

import { onLoad, onShareAppMessage } from '@dcloudio/uni-app';
onLoad((options) => {console.log('页面加载参数:', options);if (options.taskId) {getFaceSwappingDetail(options.taskId);}onShareAppMessage((e) => {const imageUrl = templateInfo.value.imageWorks[0].fileUrl;const title = templateInfo.value.template.name;const shareobj = {title: title, //分享的标题path: `/pages/tabbar/index?inviteCode=${userStore.userInfo.inviteCode}`,imageUrl: imageUrl,};console.log(shareobj, '分享shareobj');return shareobj;});
});

获取分享参数

如果需要获取参数在app.vue中 onShow中获取options

如下

onShow((options) => {console.log(options, 'app   onShow');if (options?.query?.inviteCode) {userStore.setReInviteCode(options.query.inviteCode);}
});

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/97434.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/97434.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构】树和二叉树——树和森林

目录树和二叉树树和森林树的存储结构双亲表示法孩子表示法孩子兄弟表示法森林与二叉树的转换树和森林的遍历树的先根遍历树的后根遍历树的层次遍历森林的先序遍历森林的中序遍历树的应用求树的深度输出树中所有从根到叶子的路径的算法建树的存储结构的算法哈夫曼树与哈夫曼编码…

【小宁学习日记5 PCB】电路定理

目录 一、先搞懂:原理图的 “构成密码” (1)连接线:别被 “直线” 骗了! (2)结点:红色小圆点才是 “真・连接” (3)网络标签:“无形的连线” …

ans1语法的一个例子nt5inf.cat

第二部分:语法第一部分:头部语法第一部分A:0x30 类型位0x10SEQUENCE and SEQUENCE OF10语法第一部分B:83 长度3个字节,如果为1个字节,第一部分B则没有。语法第一部分C:长度 0x09 …

三电平逆变器SVPWM控制(无解耦功能)与谐波分析

三电平逆变器的空间矢量脉宽调制(SVPWM)控制方法,重点分析在不使用解耦控制的情况下实现5%谐波含量的技术方案。我们将使用MATLAB/Simulink进行建模和仿真分析。 一、三电平逆变器基本原理 三电平逆变器相比传统两电平逆变器具有以下优势: 输出电压波形质…

模拟实现C++中的string类型:从底层理解字符串操作

string前言核心成员变量设计构造函数与析构函数默认构造函数从C风格字符串构造填充构造拷贝构造函数迭代器范围构造析构函数基本操作实现迭代器支持容量管理元素访问字符串修改操作拼接操作插入与删除字符串查找操作运算符重载总结每文推荐前言 在C中,std::string是…

pdf转ofd之移花接木

文章目录1.pdf转ofd的方法1.1 spire.pdf.free1.2 ofdrw2.移花接木3.总结1.pdf转ofd的方法 1.1 spire.pdf.free 这个是一个半开源的类库,免费版本的在转换的时候会有一个10的限制,所以不推荐使用,具体教程网上都有,这里只是分享有…

用【Coze】实现文案提取+创作

在AI技术飞速发展的当下,打造专属智能应用成为不少人的向往。今天,就带大家走进字节跳动的扣子Coze平台,看看如何借助它搭建智能体,还会介绍AI工作流,以及详细的Coze搭建步骤,开启你的AI创作之旅&#xff5…

buuctf——web刷题第5页

第五页 目录 [EIS 2019]EzPOP [WMCTF2020]Make PHP Great Again 2.0 [BSidesCF 2020]Hurdles [安洵杯 2019]iamthinking [GWCTF 2019]mypassword [HFCTF2020]BabyUpload [NewStarCTF 2023 公开赛道]include 0。0 [SWPU2019]Web4 [PASECA2019]honey_shop [Black Watc…

果蔬采摘机器人:自动驾驶融合视觉识别,精准定位,高效作业

在智慧农业的快速发展中,果蔬采摘机器人以其自动驾驶技术与视觉识别技术的完美融合,正逐步成为农业生产中的重要力量。这些机器人不仅实现了对果蔬的精准定位,还显著提高了采摘效率,展现了强大的技术优势。一、自动驾驶技术的引领…

2025年职业发展关键证书分析:提升专业能力的路径选择

在当今职场环境中,专业能力的提升已成为职业发展的重要方面。各类专业证书作为系统学习与能力验证的方式,受到越来越多职场人士的关注。本文基于当前行业发展趋势,分析8个在不同领域具有代表性的专业资格认证,为职场人士提供参考信…

【Qt】QCryptographicHash 设置密钥(Key)

QCryptographicHash 本身不能设置密钥(Key)。 它是一个用于计算非密钥型加密哈希的函数,其设计目的和 HMAC 或加密算法完全不同。 下面我详细解释为什么,以及如何正确地实现你可能想要的功能。 1. QCryptographicHash 的核心功能&…

2025板材十大品牌客观评估报告—客观分析(三方验证权威数据)

随着消费者环保意识提升,板材作为家装基础材料的性能指标受到广泛关注。中国林产工业协会数据显示,2025年国内环保板材市场规模约860亿元,但行业标准执行不一,消费者面临信息不对称问题。本报告严格依据可验证的第三方数据&#x…

诊断通信管理(Diagnostic Communication Management)详解

—— 基于《Specification of Diagnostics AUTOSAR AP R24-11》(SWS_Diagnostics.pdf) 诊断通信管理(Diagnostic Communication Management)是 AUTOSAR 自适应平台诊断管理(Diagnostic Management,DM)的核心功能模块之一,位于应用层,承担 “诊断客户端与诊断服务器实…

vue拖动排序,vue使用 HTML5 的draggable拖放 API实现内容拖并排序,并更新数组数据

vue拖动排序,vue使用 HTML5 的draggable拖放 API实现内容拖并排序,并更新数组数据 vue使用 HTML5 的draggable拖放 API实现内容拖并排序,并更新数组数据 实现效果实现代码1.模板部分2. 添加拖拽相关方法3. 在 data 中添加拖拽状态变量4. 添加…

行内元素块元素

<!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>显示例子</title><style>/* 将行内元素…

算法---动态规划(持续更新学习)

1.动态规划的经典问题 &#xff08;1&#xff09;动规基础&#xff1a;爬楼梯、斐波那契数列 &#xff08;2&#xff09;背包问题&#xff1a;0-1背包&#xff0c;多重背包 &#xff08;3&#xff09;打家劫舍 &#xff08;4&#xff09;股票问题 &#xff08;5&#xff09;子序…

迅睿CMS自定义网站表单:HTML方式调用Select下拉选项数据指南

在迅睿CMS中&#xff0c;当我们需要自定义网站表单并希望以HTML方式调用select下拉选项数据时&#xff08;而非使用系统默认的{$myfield}、{$diyfield}或{$sysfield}模板变量&#xff09;&#xff0c;可以采用以下方法实现。 问题背景 默认情况下&#xff0c;迅睿CMS表单字段通…

k8s--efk日志收集

目录 环境准备 下载efk软件包 下载 nfs 设置nfs开机自启 创建共享存储目录 配置共享目录文件 加载nfs 使共享目录生效 查看 node节点验证 共享目录配置成功 进入efk配置文件目录 修改deployment.yaml文件 修改为master主节点ip 修改为nfs共享存储目录 修改 kibana …

数值分析——算法的稳定性

由于计算时&#xff0c;误差会有累积&#xff0c;如果是长时间的计算&#xff0c;就会影响最后得到的结果&#xff0c;因此&#xff0c;需要分析一下误差的影响能否控制&#xff0c;由此就引出了算法的稳定性 数值的稳定性 对于某一种算法&#xff0c;如果初始值有很小的误差&a…

解密 Kotlin 中的隐藏调度器:Dispatchers.Main.immediate

在日常的 Android 开发中&#xff0c;我们经常使用协程来处理异步任务。你可能已经熟悉了 Dispatchers.Main、Dispatchers.IO 和 Dispatchers.Default&#xff0c;但今天我要介绍一个不太为人知却极其有用的调度器&#xff1a;Dispatchers.Main.immediate。 一个令人困惑的现象…