注:jssdk是公众号提供的功能,一般来说就是【uni引入】、【vue引入】、【react引入】
List(c+v寻找那一条):

  1. uni中引入、vue 引入、react引入
  2. uni中使用jssdk
  3. vue中使用jssdk

1、uni中引入、vue 引入、react引入

【uni】	npm install jweixin-module
【vue】	npm install weixin-js-sdk --save
【react】后面补充
【普通】jssdk官网有

2、uni中使用jssdk,自己改一改url地址啊,

封装:

const jweixin = require('jweixin-module')
export function configWeiXin(callback,arr = ['/xxxxxxxxxxxxxWx/xxxxxxxxxxxxxWx/xxxxxxxxxxxxxWx','','']) {
	console.log(arr)
		  request(arr[0],{url:arr[1],appId: arr[2]},'GET')
		  .then(res=>{					
			  // 可能需要用到的能力 需要啥就写啥。多写也没有坏处
			  let apiList = [ 
				'showAllNonBaseMenuItem',
				'onMenuShareQQ',
				'chooseInvoiceTitle',
			  	'onMenuShareAppMessage',
			  	'onMenuShareTimeline',
			  	'hideOptionMenu',
				'showMenuItems',
				'scanQRCode',
				'hideMenuItems',
			  	'showOptionMenu',
			  	'chooseWXPay',
				'chooseImage',
			  	'checkJsApi',
				'uploadImage',
			  	'openLocation',
			  	'getLocation',
				'uploadImage',
				'updateAppMessageShareData',//自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)
				'updateTimelineShareData',//自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0)
			  ];
			  console.log('返回的参数设置需要用',jweixin,res.result.timestamp,res.result.nonceStr,res.result.signature,apiList)
			  let info = {
				  // 使用没有暴露在wx对象上的
				  beta: true,
				  // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
			  	  debug: false, // 调试是true,发布的时候改为false
				  appId: res.result.appId, // 必填,公众号的唯一标识
				  timestamp: res.result.timestamp, // 必填,生成签名的时间戳
				  nonceStr: res.result.nonceStr, // 必填,生成签名的随机串
				  signature: res.result.signature.toLowerCase(),// 必填,签名
				  // signature: res.result.signature,// 必填,签名
			  	  jsApiList: apiList
			  };
			  jweixin.config(info);

			  jweixin.ready(res => {
				// jweixin.showAllNonBaseMenuItem();
			  	console.log(res+'设置成功')
				jweixin.showMenuItems({
				  menuList: [		
					'menuItem:share:qq',
					'menuItem:share:timeline',
					"menuItem:copyUrl",
					'menuItem:share:appMessage',
					"menuItem:favorite",
					"menuItem:profile"
					] // 要显示的菜单项,所有menu项见附录3
				})			  
				jweixin.hideMenuItems({
				  menuList: [
					  // 'menuItem:favorite',
					  'menuItem:share:timeline'
					  // 'menuItem:openWithQQBrowser'
				  ] // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮,所有menu项见附录3
				});
			  	if (callback) callback(jweixin);
			  });
			  jweixin.error(err => {
			  });
		  })
		.catch(err=>{
				console.log(err,'调用签名错误拉!')
		})
}

使用

jwx.configWeiXin(jweixin => {
						jweixin.invoke('updateAppMessageShareData',{ 
							title: '分享', // 分享标题
							desc: '电子', // 分享描述
							link: window.location.href + ``, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
							// link: window.location.href + `/?invoiceCode=${invoiceCode}&invoiceNo=${invoiceNo}&issueDate=${issueDate}&randomNum=${randomNum}&weixinAppId=${weixinAppId}&differentiate=${differentiate}&orderUuid=${orderUuid}&taxInclusiveTotalamount=${taxInclusiveTotalamount}`, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
							imgUrl: 'http://baidu.com/'+'gzh.jpg', // 分享图标
							success: function () {
							  // 设置成功
							  console.log('分享设置成功设置成功')
							}
						 })

},['/xxxxxxxxlWx/xxxxxxxxller/xxxxxxxxket',value])

3、vue中使用jssdk

后面我用到了再写:先给个别人的飞机票飞机票

Logo

前往低代码交流专区

更多推荐