背景

在vue中使用jssdk微信分享

weixin-js-sdk mint-ui需要安装npm install weixin-js-sdk mint-ui --save

mixins/wechat.js


//weixin-js-sdk应用
const wx = require('weixin-js-sdk')
import { Toast } from 'mint-ui'
export default {
methods: {
wechatShare(info) {
// 判断苹果手机
let _url = ''
if (window.__wxjs_is_wkwebview === true) {
_url = window.location.href.split('#')[0] || window.location.href
} else {
_url = window.location.href
}
// 访问后台接口获取微信参数
this.$store
.dispatch('GetWxParam', { url: encodeURIComponent(_url) })
.then(res => {
wx.config({
debug: false,
appId: res.data.appId, // 必填,公众号的唯一标识
timestamp: res.data.timestamp, // 必填,生成签名的时间戳
nonceStr: res.data.nonceStr, // 必填,生成签名的随机串
signature: res.data.signature, // 必填,签名,见附录1
jsApiList: [
'previewImage',
'hideAllNonBaseMenuItem',
'showMenuItems',
'onMenuShareTimeline',
'onMenuShareAppMessage',
'chooseWXPay'
] // 必填,需要使用的 JS 接口列表,所有JS接口列表见附录2
})
})
.catch(err => {
console.log(err)
})
wx.ready(() => {
const share_title = info.title
const share_desc = info.desc
const share_link = info.link
const share_img = info.img
wx.showOptionMenu()
wx.onMenuShareTimeline({
title: share_title, // 分享标题
link: share_link, // 分享链接
imgUrl: share_img, // 分享图标
success: function() {
Toast('已成功分享到朋友圈')
},
cancel: function() {
Toast('已取消分享')
}
})
wx.onMenuShareAppMessage({
title: share_title, // 分享标题
desc: share_desc, // 分享描述
link: share_link, // 分享链接
imgUrl: share_img, // 分享图标
success: function() {
Toast('已成功分享给您的朋友')
},
cancel: function() {
Toast('已取消分享')
}
})
})
}
}
}

使用方法
import wxShare from '@/mixins/wechat' //引用
export default {


mixins: [wxShare], //
methods: {
setShare() {
const shareInfo = {
title: `羽绒服低至199元!`,
desc: `7月26日-8月3日,年中限时特惠,售完即止`,
link: window.location.href,
img: '.../logo.jpg'
}
// mixins
this.wechatShare(shareInfo)
},
},
created(){
// 设置
this.setShare()
}
}

来源:https://segmentfault.com/a/1190000015999815

vue 使用jssdk分享的更多相关文章

  1. vue实现微信分享朋友圈和朋友功能

    vue实现微信分享朋友圈和朋友功能 A-A+ haibao  2018-10-25  11  21  6.2 k  百度已收录  前端开发 温馨提示:本文共3536个字,读完预计9分钟. 这两天在开发 ...

  2. Vue微信自定义分享时安卓系统config:ok,ios系统config:invalid signature签名错误,或者安卓和ios二次分享时均config:ok但是分享无效的解决办法

    简述需求:要求指定页面可以进行微信自定义分享(自定义标题,描述,图片,链接),剩下的页面隐藏所有基础接口.二次分享依然可以正常使用,切换至其他页面也可以正常进行自定义分享. 这两天在做微信自定义分享的 ...

  3. 微信JS-SDK“分享信息设置”API及数字签名生成方法(NodeJS版本)

    原文:微信JS-SDK"分享信息设置"API及数字签名生成方法(NodeJS版本) 先上测试地址以示成功: 用微信打开下面地址测试 http://game.4gshu.com/de ...

  4. 微信jssdk分享链接给好友,图标只能自己看到,对方看不到!

    问题描述:调用微信jssdk分享接口时,所有参数均正常的情况下(排除参数错误的情况),分享给好友后,其中的小图标自己看得到,接收到分享的好友看不到小图标! (如上图所示!) 出现上述问题的原因:本人猜 ...

  5. 微信jssdk分享功能,jssdk成功调用,分享内容自定义失败

    前提:调用微信jssdk分享功能,通过微信开发者工具调试,调用正常,无任何报错信息. 问题:调用成功,且开发者工具正常显示,但是通过真机调试,分享出去后,自定义内容失效,为微信自动获取的默认内容!截止 ...

  6. 微信JSSDK分享朋友圈微信自定义分享接口

    服务项目 新手技术咨询 企业技术咨询 定制开发 服务说明 QQ有问必答 QQ.微信.电话 微信开发.php开发,网站开发,系统定制,小程序开发 价格说明 200元/月 1000/月 商议       ...

  7. 企业微信jssdk分享接口管理系统

    服务项目 新手技术咨询 企业技术咨询 定制开发 服务说明 QQ有问必答 QQ.微信.电话 微信开发.php开发,网站开发,系统定制,小程序开发 价格说明 200元/月 1000/月 商议       ...

  8. 微信JSSDK分享功能详解

    本文以微信分享到朋友圈,分享给微信好友为例为参考,进行调用测试,想添加其他的功能,自行查看开发人员文档即可 工欲善其事,必先利其器,好好利用下边的帮助工具,都是腾讯给开发人员的工具 1.微信开发者说明 ...

  9. jquery jssdk分享报错解决方法

    jssdk分享报错解决方法 一般都是参数传错了

随机推荐

  1. MySQL数据库2表的增删改查

    目录 一.数据表(文件): 1.1增 1.2查看表内数据 1.3改 1.4删除列表 1.5查看库内列表及表结构 1.6复制表结构 二.列类型:(*********) 2.1数字 2.2字符串 2.3时 ...

  2. rpm安装jdk

    rpm安装jdk:(https://blog.csdn.net/daerzei/article/details/80136457) 1.卸载系统自带的JDK rpm -qa|grep java # x ...

  3. Linux内核设计与实现 总结笔记(第十六章)页高速缓存和页回写

    页高速缓存是Linux内核实现磁盘缓存.磁盘告诉缓存重要源自:第一,访问磁盘的速度要远远低于访问内存. 第二,数据一旦被访问,就很有可能在短期内再次被访问到.这种短时期内集中访问同一片数据的原理称作临 ...

  4. Laya 使list渲染支持分帧的思路

    Laya 使list渲染支持分帧的思路 @author ixenos 2019-09-06 1.由于Laya的list渲染时没有做分帧处理,只做了延迟帧处理,所以当单页元素较多时,会有大量运算卡帧的情 ...

  5. JSP XML数据处理

    JSP XML数据处理 当通过HTTP发送XML数据时,就有必要使用JSP来处理传入和流出的XML文档了,比如RSS文档.作为一个XML文档,它仅仅只是一堆文本而已,使用JSP创建XML文档并不比创建 ...

  6. UITabbarController & UITabbar 学习

    最后更新2016-04-06 一. UITabbarController 给UITabbarController 设置viewControllers熟悉时候,超过五个就会有一个 moreNavigat ...

  7. 分类汇总统计mysql数据库一个字段中不同的记录的总和

    方法1.用 if 语句,如下例. 方法2.用case when then else 语句,用法如同if. mysql> select sum(if(id<500,1,0)),sum(if( ...

  8. Linux 用户必须知道的 14 个常用 Linux 终端快捷键

    简介:以下是一些每个 Linux 用户必须使用的键盘快捷键. 使用命令行时,这些 Linux 快捷键将提升你的工作效率和效率. 你知道什么把专业用户和普通用户分开的吗?掌握键盘快捷键. 好的!这虽不是 ...

  9. python 调用C++ DLL,传递int,char,char*,数组和多维数组

    ctypes 数据类型和 C数据类型 对照表 ctypes type C type Python type c_bool _Bool bool (1) c_char char 1-character ...

  10. SQL Server中数据去重单列数据合并

    sql中我们偶尔会用到对数据进行合并,但其中的某一列数据要进行合并的操作: 如下图,一个用户有多个角色ID,如果我们想要统计一个用户有哪些角色,并且以单列的展现形式,单纯的用DISTINCT去掉肯定是 ...