nuxt3网站文章分享微信 ,QQ功能

1.安装
npm install qrcode --save-dev
2.组件使用

  <div class="share"><div style="line-height: 69px; color: #fff;width: 100px;"><p style="text-align: center;">分享:</p></div><div @click="shareToMicroblog()" class="BJ_WB"><a class="weibo" /><a>微博</a></div><!-- <div @click="shareToQQ()" class="BJ_QQ"><a class="qq"></a><a>QQ好友</a></div> --><divclass="BJ_WX"@mouseover="showQR = true"@mouseleave="showQR = false"><div class="weixinall"><a class="weixin" /><a>微信</a></div><divclass="weixincode":class="{ 'qrcode-visible': showQR }"style="position: absolute;top: -220px;opacity: 0;transition: opacity 0.3s ease;width: 200px;height: 200px;background-color: #fff;"><canvasid="QRCode_header"style="width: 165px; height: 165px; margin: auto"/><pstyle="color: #818181;font-size: 12px;line-height: 16px;margin-left: 15px;">打开微信扫一扫<br />将您喜欢的内容分享微信朋友圈</p></div></div><div class="BJ" @click="shareToQQRom()"><a class="qqkj"></a><a>QQ</a></div></div>
<script setup lang="ts">
import QRCode from "qrcode";
const route = useRoute();
const id = ref(route.params.id);
const showQR = ref(false);
const shareUrl = `https://XXXXXXX.COM/XXXXXXXXXX/${id.value}`;
//分享到QQ
// const shareToQQ= function() {
//   window.open(
//       `https://connect.qq.com/widget/shareqq/index.html?url=${shareUrl}&title=${sysInfo}&source=${shareUrl}&desc=${sysInfo}&pics=`)
// }
//分享到微信
onMounted(() => {const QR_OPTIONS = {errorCorrectionLevel: "H",width: 165,height: 165,margin: 3,color: {dark: "#000",light: "#fff",},};QRCode.toCanvas(document.querySelector("#QRCode_header"),shareUrl,QR_OPTIONS,(error: any) => {if (error) console.error("二维码生成失败:", error);});
});//分享到微博
const shareToMicroblog = function () {window.open(`https://service.weibo.com/share/share.php?url=${shareUrl}&title=${details.value.productBackground}`);
};//分享到qq空间
const shareToQQRom = function () {const pics = encodeURIComponent(details.value.productBackgroundImage);const desc = encodeURIComponent(details.value.productBackground);window.open(`https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=${shareUrl}&title=${details.value.productBackground}&summary=${details.value.productBackground}&desc=${desc}&pics=${pics}`);
};
</script>
<style scoped lang="scss">
.share {display: flex;flex-wrap: nowrap;width: 100%;justify-content: center;.weibo {display: block;width: 24px;height: 21px;background-image: url("/assets/img/wb.png") !important;background-size: cover;background-repeat: no-repeat;background-position: 50% 50%;}.BJ_WB {background-color: #e6162d;width: 110px;height: 40px;margin-top: 15px;margin-right: 15px;display: flex;border-radius: 8px;justify-content: center;align-items: center;color: #fff;cursor: pointer;&:hover {background-color: #f75567;transform: translateY(-2px);}}.BJ_QQ {background-color: #2384cc;width: 110px;height: 40px;margin-top: 15px;margin-right: 15px;display: flex;border-radius: 8px;justify-content: center;align-items: center;color: #fff;cursor: pointer;&:hover {background-color: #5faae2;transform: translateY(-2px);}}.BJ_WX {background-color: #3cb034;width: 110px;height: 40px;margin-top: 15px;border-radius: 8px;/* position: relative; */display: flex;justify-content: center;align-items: center;transition: transform 0.2s;color: #fff;cursor: pointer;&:hover {background-color: #7dd377;transform: translateY(-2px);}}.BJ {background-color: rgb(255, 206, 0);width: 110px;height: 40px;display: flex;border-radius: 8px;justify-content: center;align-items: center;color: #fff;margin: 15px;cursor: pointer;&:hover {background-color: #ffde52;transform: translateY(-2px);}}.qq {display: block;width: 28px;height: 28px;background-image: url("/assets/img/qq.png");background-size: cover;background-repeat: no-repeat;background-position: 50% 50%;}.qqkj {display: block;width: 28px;height: 28px;background-image: url("/assets/img/qqkj.png");background-size: cover;background-repeat: no-repeat;background-position: 50% 50%;}.weixinall {position: relative;display: flex;justify-content: center;.weixin {display: block;width: 28px;height: 28px;background-image: url("/assets/img/wx.png");background-size: cover;background-repeat: no-repeat;background-position: 50% 50%;}.weixincode {position: absolute;left: -60px;z-index: 1000 !important;}}
}.qrcode-visible {opacity: 1 !important;pointer-events: auto;
}
</style>

效果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

VMWare Ubuntu 详细安装教程

VMWare Ubuntu 详细安装教程 一、下载安装VMware二、下载 Ubuntu 镜像文件三、安装 Ubuntu四、开启虚拟机 一、下载安装VMware 官网下载地址https://www.vmware.com/products/desktop-hypervisor/workstation-and-fusion知乎大佬的博客原文&#xff0c;含下载地址https://zhua…

MySQL里的锁有哪些

MySQL 的锁机制是实现并发控制的核心&#xff0c;不同层级的锁适用于不同场景&#xff0c;以下是对其锁类型的系统分类及详细说明&#xff1a; 一、按锁粒度划分 1. 全局锁&#xff08;Global Lock&#xff09; 用途&#xff1a;锁定整个数据库实例&#xff0c;用于全库备份。…

Spring WebFlux 教程

Spring WebFlux 教程 Spring WebFlux 是 Spring Framework 5 引入的一种新的响应式编程框架&#xff0c;旨在处理高并发、高性能和实时数据流应用。与传统基于线程阻塞的 Spring MVC 不同&#xff0c;WebFlux 采用了非阻塞、事件驱动的编程模型&#xff0c;能够更加高效地利用…

SCI英文论文Accepted后的第一步——Rights and Access

SCI英文论文Accepted后的第一步——Rights and Access 目录 SCI英文论文Accepted后的第一步——Rights and AccessBased on information provided the embargo period/end date is 24 months. 因为选择闭源**Rights and Access(版权与访问权限)**环节是关键第一步,具体操作流…

Qt文件管理系统

引言 今天我将使用model/view模型视图框架来完成一个简单的Qt文件管理系统&#xff0c;主要使用到了QTreeView、QTabelView视图和QFileSystemModel文件系统模型。 界面设计 使用Qt创建项目并勾选创建ui文件&#xff0c;打开ui文件&#xff0c;使用Tree View、Table View、St…

《可爱风格 2048 游戏项目:HTML 实现全解析》

一、引言 在如今的数字化时代&#xff0c;小游戏以其简单易上手、趣味性强的特点深受大家喜爱。2048 游戏作为一款经典的数字合并游戏&#xff0c;拥有庞大的玩家群体。本文将详细介绍一个用单文件 HTML 实现的可爱风格 2048 游戏项目&#xff0c;它不仅具备传统 2048 游戏的基…

CSS3:深度解析与实战应用

CSS3&#xff1a;深度解析与实战应用详解 1. 选择器增强2. 盒模型扩展3. 渐变和背景4. 转换和动画总结 CSS3 是 CSS&#xff08;层叠样式表&#xff09;的最新版本&#xff0c;它引入了许多新的特性和功能&#xff0c;使得网页的样式设计更加灵活、丰富和具有动态效果。在本文中…

C语言 —— 此去经年梦浪荡魂音 - 深入理解指针(卷四)

目录 1. 回调函数 2. qsort函数 2.1 使用qsort函数排序整型数据 2.2 使用qsort排序结构数据 2.3 使用冒泡排序模拟实现qsort函数 1. 回调函数 回调函数其实就是一个通过函数指针调用的函数&#xff0c;如果你把函数的指针作为参数传递给另一个函数&#xff0c;当这个指针被…

Shiro框架漏洞攻略

漏洞原理&#xff1a;服务端在接收到⼀个Cookie时&#xff0c;会按照如下步骤进⾏解析处理&#xff1a;1.检索RememberMe Cookie的值 2.进⾏Base64解码 3.进⾏AES解码 4.进⾏反序列化操作 在第4步中的调⽤反序列化时未进⾏任何过滤&#xff0c;进⽽可以导致出发远程代码执⾏漏…

Ceph集群2025(Squid版)导出高可用NFS集群(下集 )

本次主要对接K8S和传统的一样而已,比较简单&#xff0c;不再过多讲解 官网 https://github.com/kubernetes-csi/csi-driver-nfs/tree/master/chartshelm repo add csi-driver-nfs https://raw.githubusercontent.com/kubernetes-csi/csi-driver-nfs/master/charts helm pull c…

洛谷题单入门4-P5729 【深基5.例7】工艺品制作-python

输入格式 第一行三个正整数 w,x,h。 第二行一个正整数 q。 接下来 q 行&#xff0c;每行六个整数 输出格式 输出一个整数表示答案。 三维数组直接标记 class Solution:staticmethoddef oi_input():"""从标准输入读取数据"""w, x, h map(…

亚马逊云科技全面托管DeepSeek-R1模型现已上线

文章目录 亚马逊云科技全面托管DeepSeek-R1模型现已上线在Amazon Bedrock中开始使用DeepSeek-R1模型DeepSeek-R1现已可用 亚马逊云科技全面托管DeepSeek-R1模型现已上线 亚马逊云科技提供众多免费云产品&#xff0c;可以访问&#xff1a;亚马逊云科技 截至1月30日&#xff0c;D…

IO模型种类

文章目录 同步阻塞 I/O&#xff08;Blocking I/O&#xff0c;BIO&#xff09;同步非阻塞 I/O&#xff08;Non-blocking I/O&#xff0c;NIO&#xff09;I/O 多路复用&#xff08;I/O Multiplexing&#xff09;信号驱动 I/O&#xff08;Signal-driven I/O&#xff09;异步 I/O&a…

C语言入门教程100讲(40)文件定位

文章目录 1. 什么是文件定位?2. 文件指针3. 文件定位函数3.1 `fseek` 函数3.2 `ftell` 函数3.3 `rewind` 函数4. 示例代码代码解析:输出结果:5. 常见问题问题 1:`fseek` 的 `offset` 参数可以为负数吗?问题 2:如何判断文件定位是否成功?问题 3:`rewind` 和 `fseek(file…

el-table折叠懒加载支持排序

el-table折叠懒加载支持排序 因为el-table懒加载的子节点是通过缓存实现的&#xff0c;如果想在展开的情况下直接刷新对应子节点数据&#xff0c;要操作el-table组件自身数据&#xff0c;否则不会更新 以排序功能为例 maps: new Map() //用于存储子节点懒加载的数据// 加载子…

Off-Road-Freespace-Detection配置pytorch2.0.0

一、概述 在github上进行开源代码搜索&#xff0c;发现了Off-Road-Freespace-Detection&#xff08;链接如下所示&#xff09;。这是对越野环境可通行区域的检测&#xff0c;在经过测试之后&#xff0c;发现对自己有益。 GitHub - chaytonmin/Off-Road-Freespace-Detection: O…

ChatGPT降低论文AIGC重复率的提示词合集(高效降重方法)

&#x1f4a1; 问题&#xff1a;写完毕业论文后&#xff0c;查AIGC率过高&#xff0c;手动降重后仍然很高&#xff0c;该怎么办&#xff1f; &#x1f4cc; 解决方案&#xff1a; 1️⃣ 先查AIGC率&#xff08;找出AI生成的部分&#xff09; 2️⃣ 用ChatGPT优化&#xff08;使…

【Spring 新特性全解析】

Spring 新特性全解析 引言 在当今 Java 企业级开发领域&#xff0c;Spring 框架无疑是中流砥柱般的存在。它以其强大的功能、高度的可扩展性和便捷的开发体验&#xff0c;赢得了广大开发者的青睐。随着技术的不断演进&#xff0c;Spring 也在持续更新迭代&#xff0c;带来了一…

System.arraycopy 在音视频处理中的应用

在音视频开发领域&#xff0c;我们经常需要处理大量的数据&#xff0c;例如音频 PCM 数据的传输、视频帧的缓存等。在这些场景下&#xff0c;数据的复制与传输往往直接影响到应用的性能。Java 提供的 System.arraycopy 方法&#xff0c;在音视频处理代码中出现频率非常高。本文…

fastapi+angular评论和回复

说明&#xff1a;fastapiangular评论和回复 效果图: step1:sql show databases; DROP TABLE users; SHOW CREATE TABLE db_school.users; show tables; use db_school; SELECT * FROM db_school.jewelry_categories; CREATE DATABASE db_school; select *from users -- 用户…