需求:文章添加分享功能(包括微信、微博、QQ空间)

如下图所示:

点击图标分别跳转到如下界面:(实现效果如下

话不多说直接代码(可以封装成组件)

<template>
<div class="shareBox">
分享到:
<span class="hover-pointer" @click="shareToMicroblog()">
<img src="@/assets/img/weibo.png" alt="" />
</span>
<span class="qqIcon hover-pointer" @click="shareToQQRom()">
<img src="@/assets/img/QQKJ.png" alt="" />
</span>
<span class="hover-pointer" @click="shareToWeChat()">
<img src="@/assets/img/weixin.png" alt="" />
</span>
</div>
</template> <script>
export default {
props: ["sysInfo"], //父组件传过来的文章数据
data() {
return {
shareUrl: location.href,
};
},
methods: {
/**
* 分享到微博
*/
shareToMicroblog() {
//跳转地址
window.open(
"https://service.weibo.com/share/share.php?url=" +
encodeURIComponent(this.shareUrl) +
"&title=" +
this.sysInfo
);
},
/**
* 分享到qq空间
*/
shareToQQRom() {
//跳转地址
window.open(
"https://sns.qzone.qq.com/cgi-bin/qzshare/cgi_qzshare_onekey?url=" +
encodeURIComponent(this.shareUrl) +
"&title=" +
this.sysInfo +
"&summary=" +
this.sysInfo
);
},
/**
* 分享到微信:需要单独画页面
*/
shareToWeChat() {
localStorage.setItem("shareUrl", this.shareUrl); // 存储当前页面地址,前端页面直接根据URL链接生成二维码
let url = location.href.split("#")[0] + "#/Share/toWechat"; // 注意:#/Share/toWechat: 自己定义的路由
window.open(url);
},
},
};
</script> <style lang="scss" scoped>
.shareBox {
.iconfont {
font-size: 22px !important;
}
.qqIcon {
display: inline-block;
margin: 0 10px;
}
}
</style>

注意:

1.微信分享需要加另外画页面 加前端页面根据URL链接生成二维码功能

参考:Vue中qrcode的使用方法(生成二维码插件) / 前端页面根据URL链接生成二维码 - 微微一笑绝绝子 - 博客园 (cnblogs.com)

2.橙色字体需要换成你自己定义的变量(包括图片 路由  props中的值 )

3.注意微信分享页面的路由设置,最好放在根路由中 (如下图 )并同步到代码中

完结撒花!赶快试试吧

作者:微微一笑绝绝子
出处:https://www.cnblogs.com/wwyxjjz/p/16922560.html
本博客文章均为作者原创,转载请注明作者和原文链接。

Vue 项目中实现的微信、微博、QQ空间分享功能(亲测有效)的更多相关文章

  1. 《社交红利》读书总结--如何从微信微博QQ空间等社交网络带走海量用户、流量与收入

    <社交红利--如何从微信微博QQ空间等社交网络带走海量用户.流量与收入>--徐志斌 著 <社交红利>这本书2013年9月才上市,卖的非常火. 我最初是在公司内部的期刊上,看到有 ...

  2. QQ空间分享功能(二)

    http://sns.z.qq.com/tools/share/demo_html.jsp  手机QQ空间分享功能接入指引: 1.请求地址: http://sns.z.qq.com/share 2.请 ...

  3. JavaScript实现HTML页面集成QQ空间分享功能

    <!DOCTYPE HTML> <html> <head> <title>QQ空间分享</title> <meta http-equi ...

  4. vue新手入门之使用vue框架搭建用户登录注册案例,手动搭建webpack+Vue项目(附源码,图文详解,亲测有效)

    前言 本篇随笔主要写了手动搭建一个webpack+Vue项目,掌握相关loader的安装与使用,包括css-loader.style-loader.vue-loader.url-loader.sass ...

  5. vue项目中基于D3.js实现桑基图功能

    前端实现数据可视化的方案有很多种,以前都是使用百度的echarts,使用起来很方便,直接按照特定的数据格式输入,就能实现相应的效果,虽然使用方便,但是缺点就是无法自定义一些事件操作,可自由发挥的功能很 ...

  6. vue项目中微信jssdk在ios签名失败

    一.问题描述 1. vue项目中微信jssdk签名时,在安卓和ios是有差异的,签名时使用的url=window.location.href.split('#')[0],此时在安卓没问题,在ios会导 ...

  7. 转:如何在Vue项目中使用vw实现移动端适配

    https://www.w3cplus.com/mobile/vw-layout-in-vue.html 有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在<使用Flex ...

  8. 在Vue项目中使用vw实现移动端适配

    有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在<使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着viewport单位越来越 ...

  9. 如何在Vue项目中使用vw实现移动端适配(转)

    有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在<使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着viewport单位越来越 ...

  10. 如何在Vue项目中使用vw实现移动端适配

    有关于移动端的适配布局一直以来都是众说纷纭,对应的解决方案也是有很多种.在< 使用Flexible实现手淘H5页面的终端适配>提出了Flexible的布局方案,随着 viewport 单位 ...

随机推荐

  1. DVWA靶场实战(五)——File Upload

    DVWA靶场实战(五) 五.File Upload: 1.漏洞原理: File Upload中文名叫做文件上传,文件上传漏洞是指用户上传了一个可执行脚本文件(php.jsp.xml.cer等文件),而 ...

  2. Redefinition of 'y1' as different kind of symbol

    Redefinition of 'y1' as different kind of symbol 原因 解释:此次定义的y1变量与函数库中定义的y1重名了,所以编译错误,重定义了y1变量. 解决方法: ...

  3. 深入Typescript--01-使用roolup编译Typescript

    Typescript是什么? TypeScript是Javascript的超集,遵循最新的ES5/ES6规范.Typescript扩展了Javascript语法. 为什么要用Typescript? 1 ...

  4. 移动端微信小程序开发学习报错记录--toast.js:41 未找到 van-toast 节点,请确认 selector 及 context 是否正确

    这个问题仔细检查了一下代码引入,是没有问题的, 根本原因是在页面上忘了加<van-toast id="van-toast" /> 具体引入代码如下: app.json ...

  5. sun.security.validator.ValidatorException: PKIXpath building failed: sun.security.provider,javax.net.ssT.SSLHandshakeExceptions.certpath.SunCertPathBuilderException

    报错信息: sun.security.validator.ValidatorException: PKIXpath building failed: sun.security.provider,jav ...

  6. python学习第二周总结

    上周内容概要 基本数据类型之布尔值 基本数据类型至元组 基本数据类型之集合 与用户交互 格式化输出 基本运算符 常用运算符 逻辑运算符 成员运算符 身份运算符 垃圾回收与机制 流程控制理论 流程控制之 ...

  7. Java的两个好用的工具包 Apache commons

    Apache commons 介绍 这是apache commons lang3的工具类的截图 这个工具,小皮一般用在业务层较多 这是apache commons codec下面的工具 这个工具包,今 ...

  8. Vue35 路由

    1 简介 vue-router是vue的一个插件,专门用来实现SPA应用.SPA也就是单页Web应用,特点是:整个应用只有一个完整的页面,点击页面中的导航链接不会刷新页面,只会做页面的局部更新,数据需 ...

  9. Javaweb-1note C/S B/S HTML CSS javaScript一点点语法

    ------------恢复内容开始------------ Java web概念: *javaweb:使用java语言开发基于互联网的项目 *软件架构: 1.c/s:Clienr/Server 客户 ...

  10. vue + element-ui + qrcodejs2 实现二维码生成

    1.在所在项目下安装插件 npm i qrcodejs2 2.在需要生成二维码的页面引入qrcodejs import QRCode from 'qrcodejs2' 3.使用 <el-butt ...