uni-app Vue3使用微信JSSDK 本地运行和发布报错
uni-app Vue3使用微信JSSDK 本地运行和发布报错
操作步骤:
import {apiUrl} from '@/common/sju.ajax.js'
//apiUrl 接口域名前缀
//微信js-sdk引入
import * as jweixin from 'jweixin-module'
function weixinJSConfig(title, linkUrl, imgUrl,desc) {
var url = window.location.href;
console.info('------------url--------------');
console.info(url);
uni.request({
url: apiUrl + '/home/getWeixinJSConfig',
data: {
url: url
},
method: 'POST',
timeout: 600000,
success: (res) => {
console.info('----------------------------jsconfig--------------------------');
console.info(res.data);
var config = {
debug: false,
appId: res.data.appId,
timestamp: res.data.timestamp,
nonceStr: res.data.nonceStr,
signature: res.data.signature,
jsApiList: [
'checkJsApi',
'updateTimelineShareData',
'updateAppMessageShareData',
'hideMenuItems'
]
};
jweixin.config(config);
jweixin.ready(function() {
jweixin.hideMenuItems({
menuList: ['menuItem:originPage','menuItem:openWithSafari','menuItem:openWithQQBrowser','menuItem:editTag','menuItem:copyUrl','menuItem:share:qq', 'menuItem:favorite', 'menuItem:share:QZone','menuItem:openWithSafari']
});
jweixin.updateTimelineShareData({
title: title,
link: appUrl + linkUrl,
imgUrl: imgUrl,
success: function() {
}
})
jweixin.updateAppMessageShareData({
title: title,
desc: desc,
link: appUrl + linkUrl,
imgUrl: imgUrl,
success: function() {
}
})
});
}
});
}
function scanQRCode() {
var url = window.location.href;
uni.request({
url: apiUrl + '/home/getWeixinJSConfig',
data: {
url: url
},
method: 'POST',
timeout: 600000,
success: (res) => {
var config = {
debug: false,
appId: res.data.appId,
timestamp: res.data.timestamp,
nonceStr: res.data.nonceStr,
signature: res.data.signature,
jsApiList: [
'checkJsApi',
'updateTimelineShareData',
'updateAppMessageShareData',
'hideMenuItems',
'scanQRCode'
]
};
jweixin.config(config);
jweixin.scanQRCode({
needResult: 1,
scanType: ["qrCode","barCode"],
success: function (res) {
var result = res.resultStr;
if(res.resultStr.indexOf(',') > 0){
var dealserialNumber=res.resultStr.split(',')[1];
dealserialNumber = dealserialNumber.replace(/[^a-z\d]/ig, "");
dealserialNumber=dealserialNumber.replace('sn','');
uni.setStorageSync('dealserialNumber', dealserialNumber);
}else{
alert(res.resultStr);
}
}
});
}
});
}
export {
weixinJSConfig,
scanQRCode
}
预期结果:
- config注入成功
实际结果:
- jweixin.config is not a function
bug描述:
- 使用微信JSSDK本地运行报方法未定义,发布h5报方法不是由jweixin-module导出
更多关于uni-app Vue3使用微信JSSDK 本地运行和发布报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
5 回复
使用第三方封装方法已解决
更多关于uni-app Vue3使用微信JSSDK 本地运行和发布报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
怎么解决的?
回复 1***@qq.com: 大佬解决了吗
回复 龙锐少女的梦: npm install weixin-js-sdk -S