uniapp中使用微信SDK

uniapp中使用微信SDK

uniapp的分享不支持h5,所以要在uniapp中使用微信SDK,但总是遇到很多问题,下面一起来探讨一下

首先,先引入微信sdk文件

npm install weixin-js-sdk

记得调用

var wx = require('weixin-js-sdk');

然后进行配置,单页面引入在onLoad或onReady中调用

setShareConfig() {
				//对url 进行编码 这里看情况选择
				// var localUrl = encodeURIComponent(location.href.split('#')[0]);
				var localUrl = location.href.split('#')[0] 
				//分享的地址,按实际需要写
				let currentUrl = 'https://xxxx' 
				//这里的地址一定要配置过相关权限,否则无效 我用的uview封装的接口,实际用的时候换成自己封装的
				this.$u.api.getjsSDKApi({
					appId: 'wxd657ebae1b63429d',
					url: localUrl
				}).then(res => {
					// console.log(res.data)
					//根据实际接口返回参数填写,这里只是我 的形式
					const {
						appId,
						nonceStr,
						signature,
						timestamp
					} = res.data
					//通过微信config接口注入配置
					wx.config({
						debug: false, //默认为false 为true的时候是调试模式,会打印出日志
						appId: appId,
						timestamp: timestamp,
						nonceStr: nonceStr,
						signature: signature,
						//这里引入了新旧各两种方式,单独引入新的或旧的没有效果,不知道什么原因
						jsApiList: [
							'checkJsApi',
							'onMenuShareAppMessage',
							'onMenuShareTimeline',
							'updateAppMessageShareData',
							'updateTimelineShareData',
						],
					});

					//配置自定义分享内容
					window.share_config = {
						share: {
						//最好不要包含现金,红包等字眼,有些时候可能会有问题
							title: '一起敲代码!', // 这是分享展示卡片的标题
							desc: '机会先到先得!', // 这是分享展示的摘要
							//要是https的网址,否则失败
							link: currentUrl, // 这里是分享的网址
							//图片如果是https的网址,测试ios正常,安卓无法显示图片,不知道具体原因,改为http正常,注意不支持相对路径
							imgUrl: 'http://tob-h5.runyie.com/agent-reg/static/icon.jpg', // 这里是需要展示的图标
							success: function(rr) {
								// console.log('成功' + JSON.stringify(rr))
							},
							cancel: function(tt) {
								// console.log('失败' + JSON.stringify(tt));
							}
						}
					};
					// config
					wx.ready(function() {
						// console.log("开始配置")
						wx.updateAppMessageShareData(window.share_config.share);
						wx.updateTimelineShareData(window.share_config.share);
						wx.onMenuShareTimeline(window.share_config.share);
						wx.onMenuShareAppMessage(window.share_config.share);
					});
					wx.error(function(res) {
						console.log('wx error :', res)
					});
				}).catch(err => {
					console.log(err);
				})
			},

一定记得要调用!!!只能在微信中
如果配置失败,可以打开debug查看具体原因,总之,坑还是有的,
也测试过uniapp推荐的jweixin,
但失败了,最后还是用的wx.
新手上路,多多指教!

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值