vue实现微信分享功能


Posted in Javascript onNovember 28, 2018

本文实例为大家分享了vue实现微信分享功能的具体代码,供大家参考,具体内容如下

1.引入微信js

<script type="text/javascript" src="http://res.wx.qq.com/open/js/jweixin-1.2.0.js"></script>

2.从后台获取签名并分享

fenxiangFun(){//详情分享
 var that = this;
 this.$http({
 url:this.changeData() + '/member/weChatShare',
 method: "post",
 params: {
 url : window.location.href.split('#')[0]
 }
 }).then(function(res){
 // console.log(res)
 wx.config({
 //debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
 appId: res.data.appId, // 必填,公众号的唯一标识
 timestamp: res.data.timestamp, // 必填,生成签名的时间戳
 nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
 signature: res.data.signature,// 必填,签名
 jsApiList: ["onMenuShareAppMessage","onMenuShareTimeline"] // 必填,需要使用的JS接口列表
 });
 
 wx.ready(function(){
 // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
 //分享给朋友
 wx.onMenuShareAppMessage({
 title: that.projectDetail.project_name, // 分享标题
 desc: '卖铺宝', // 分享描述
 link: window.location.href.split('#')[0], // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
 imgUrl: that.projectPic[0], // 分享图标
 type: '', // 分享类型,music、video或link,不填默认为link
 dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
 success: function () {
  // 用户点击了分享后执行的回调函数
 }
 });
 
 //分享到朋友圈
 wx.onMenuShareTimeline({
 title: that.projectDetail.project_name, // 分享标题
 link: window.location.href.split('#')[0], // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
 imgUrl: that.projectPic[0], // 分享图标
 success: function () {
  // 用户点击了分享后执行的回调函数
 }
 });
 });
 wx.error(function(res){
 // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
 });
 }.bind(this)).catch(function(err){
 console.log("商店详情页面错误:",err)
 });
},

3.ios兼容性问题

beforeRouteEnter (to, from, next) {
 var u = navigator.userAgent;
 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
 // XXX: 修复iOS版微信HTML5 History兼容性问题
 if (isiOS && to.path !== location.pathname) {
 // 此处不可使用location.replace
 location.assign(to.fullPath)
 } else {
 next()
 }
},

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery事件 delegate()使用方法介绍
Oct 30 Javascript
javascript数组去重的方法汇总
Apr 14 Javascript
js获取数组的最后一个元素
Apr 14 Javascript
AJAX实现瀑布流触发分页与分页触发瀑布流的方法
May 23 Javascript
学习Angular中作用域需要注意的坑
Aug 17 Javascript
jquery实现页面加载效果
Feb 21 Javascript
详解webpack提取第三方库的正确姿势
Dec 22 Javascript
AngularJS动态添加数据并删除的实例
Feb 27 Javascript
angular4 JavaScript内存溢出问题
Mar 06 Javascript
对vue下点击事件传参和不传参的区别详解
Sep 15 Javascript
微信小程序 组件的外部样式externalClasses使用详解
Sep 06 Javascript
Vue中添加滚动事件设置的方法详解
Sep 14 Javascript
vue微信分享到朋友圈 vue微信发送给好友
Nov 28 #Javascript
详解小程序rich-text对富文本支持方案
Nov 28 #Javascript
微信小程序实现简单评论功能
Nov 28 #Javascript
微信小程序实现省市区三级地址选择
Jun 21 #Javascript
Vue一次性简洁明了引入所有公共组件的方法
Nov 28 #Javascript
react脚手架如何配置less和ant按需加载的方法步骤
Nov 28 #Javascript
微信小程序仿知乎实现评论留言功能
Nov 28 #Javascript
You might like
哪吒敖丙传:新人物二哥敖乙出场 小敖丙奶气十足
2020/03/08 国漫
Apache启动报错No space left on device: AH00023该怎么解决
2015/10/16 PHP
laravel 5异常错误:FatalErrorException in Handler.php line 38的解决
2017/10/12 PHP
PHP设计模式之建造者模式定义与用法简单示例
2018/08/13 PHP
jquery 插件之仿“卓越亚马逊”首页弹出菜单效果
2008/12/25 Javascript
浅析jQuery对select操作小结(遍历option,操作option)
2013/07/04 Javascript
js函数名与form表单元素同名冲突的问题
2014/03/07 Javascript
Node.js操作Firebird数据库教程
2016/03/04 Javascript
分享19个JavaScript 有用的简写写法
2017/07/07 Javascript
JQuery和html+css实现带小圆点和左右按钮的轮播图实例
2017/07/22 jQuery
浅谈Angular6的服务和依赖注入
2018/06/27 Javascript
jQuery实现监听下拉框选中内容发生改变操作示例
2018/07/13 jQuery
vue实现一个炫酷的日历组件
2018/10/08 Javascript
vue增加强缓存和版本号的实现方法
2019/05/01 Javascript
vue实现移动端图片上传功能
2019/12/23 Javascript
微信小程序上传帖子的实例代码(含有文字图片的微信验证)
2020/07/11 Javascript
javascript实现搜索筛选功能实例代码
2020/11/12 Javascript
小程序实现点击tab切换左右滑动
2020/11/16 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
python3设计模式之简单工厂模式
2017/10/17 Python
Python实现调度算法代码详解
2017/12/01 Python
Python实现字典(dict)的迭代操作示例
2018/06/05 Python
python3实现小球转动抽奖小游戏
2020/04/15 Python
Python Socket TCP双端聊天功能实现过程详解
2020/06/15 Python
Python 操作SQLite数据库的示例
2020/10/16 Python
python用opencv 图像傅里叶变换
2021/01/04 Python
京东港澳售:京东直邮港澳台
2018/01/31 全球购物
餐饮营销方案
2014/02/23 职场文书
质量月活动策划方案
2014/03/10 职场文书
火锅店的活动方案
2014/08/15 职场文书
毕业生银行实习自我鉴定
2014/10/14 职场文书
2015员工年度考核评语
2015/03/25 职场文书
2015年事业单位办公室文员工作总结
2015/04/24 职场文书
2015年依法治校工作总结
2015/07/27 职场文书
《蜜蜂引路》教学反思
2016/02/22 职场文书
Go归并排序算法的实现方法
2022/04/06 Golang