当前位置: 首页 > news >正文

uniapp微信公众号H5分享

如果项目文件node_modules中没有weixin-js-sdk文件,则直接使用本文章提供的;

如果不生效,则在template.h5.html中引入

<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>

首先引入weixin-js-sdk

<script>import * as weixin from 'weixin-js-sdk'import * as UserApi from '@/api/user'export default {data() {return {}},onLoad(options) {this.weixinShareInfo();},methods: {weixinShareInfo(){var that = this;//获取当前url然后传递给后台获取授权和签名信息var urls = window.location.href.split('#')[0]; //当前网页的URL,不包含#及其后面部分console.log('888:',window.location.href.split('#')[0]);var data = {urls:urls}//获取到微信分享相关配置UserApi.fenxiang(data, { load: true }).then(res => {if(res.data && res.data.signData){console.log('res.data.signData:',res.data.signData);weixin.config({debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId: res.data.signData.appId, // 必填,公众号的唯一标识timestamp: res.data.signData.timestamp, // 必填,生成签名的时间戳nonceStr: res.data.signData.nonceStr, // 必填,生成签名的随机串signature: res.data.signData.signature,// 必填,签名jsApiList: ["onMenuShareTimeline","onMenuShareQQ","onMenuShareAppMessage","updateAppMessageShareData","updateTimelineShareData"] // 必填,需要使用的JS接口列表});weixin.ready(function(){console.log(999999999998888888888);weixin.checkJsApi({jsApiList: ['updateAppMessageShareData',"updateTimelineShareData"], // 需要检测的JS接口列表,所有JS接口列表见附录2,success: function(res2) {// 以键值对的形式返回,可用的api值true,不可用为false// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}// config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。weixin.updateAppMessageShareData({ title: '测试标题', // 分享标题desc: res.data.signData.intro, // 分享描述link: res.data.signData.url, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致imgUrl: res.data.signData.fximg, // 分享图标success: function () {// 设置成功console.log('===分享===');}})weixin.updateTimelineShareData({title: '测试标题', // 分享标题desc: res.data.signData.intro, // 分享描述link: res.data.signData.url, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致imgUrl: res.data.signData.fximg, // 分享图标success: function () {// 设置成功console.log('===分享===');}})},fail: function(err){console.log('checkJsApi:',err);}});})weixin.error(function(err){console.log('err:',err);// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。})}}).catch(err => {})},}}
</script>

http://www.lryc.cn/news/304157.html

相关文章:

  • 深入理解指针(c语言)
  • 高级语言期末2015级唐班B卷
  • 开发一款招聘小程序需要具备哪些功能?
  • 嵌入式学习-qt-Day3
  • 零基础到高级:Android音视频开发技能路径规划
  • 阿里云香港轻量应用服务器网络线路cn2?
  • python中websockets与主线程传递参数
  • js谐音梗创意小游戏《望子成龙》
  • 第十篇:node处理404和服务器错误
  • 左右互博。
  • android通过广播打印ram使用信息
  • 内存管理——线性内存,进程空间
  • 入门Python必读的流程控制语句
  • day05-进程通信
  • 如何将OpenAI Sora生成的普通AI视频转化为Vision Pro的空间视频,沉浸式体验
  • 爬虫基础(下)
  • 【八股文面试】Java基础常见面试题总结(上)
  • c++:蓝桥杯的基础算法2(构造,模拟)+练习巩固
  • C++ 和 C#的区别
  • 2.14日学习打卡----初学Zookeeper(一)
  • SkyWalking之APM无侵入可观测原理分析
  • Missing artifact org.yaml:snakeyaml:jar:1.29
  • 三opencv源码解压及环境变量配置
  • vue实时监控视频播放的进度,并在播放80%位置触发相应操作
  • HTML+CSS滚动条样式如何单独给firefox设置 scrollbar-width: none;,而不影响其他浏览器
  • 《Go 简易速速上手小册》第2章:控制结构与函数(2024 最新版)
  • 基于EasyCVR视频汇聚系统的公安网视频联网共享视频云平台建设思路分析(一)
  • HQYJ 2024-2-21 作业
  • LeetCode每日一题【283. 移动零】
  • CF1200E Compress Words