const app = getApp();
//扫码功能
function scanAction() {
wx.scanCode({
onlyFromCamera: false,
scanType: ['qrCode', 'barCode', 'datamatrix', 'pdf417'],
//结果处理
success: res => dealScanCode(res.result),
fail: (e) => {
if (e && e.errMsg && e.errMsg.indexOf('scanCode:fail cancel') != -1) {
return;
}
wx.showToast({ title: '扫码失败', icon: 'none', })
}
});
}
// 判断连接
function dealScanCode(result) {
app.log("scan:" + result)
if (!result || !result.lastIndexOf) {
wx.showToast({ title: '二维码错误', icon: 'none', duration: 2000 })
return;
}
// 具体的连接处理
if (result.lastIndexOf('synthetical=') != -1) {
bindAccount(result);
return;
}
//无效的二维码
wx.showToast({ title: '二维码错误', icon: 'none', duration: 2000 })
}
//处理连接
function bindAccount(param){
// 截取字符串
let groupNum = getUrlParam(param, 'chatID')
let groupType = getUrlParam(param, 'type');
}
// 提供外部的接口
module.exports = {
scanAction,
dealScanCode,
getUrlParam
}
// 正则表达式截取字符串的方法
function getUrlParam(url, name) {
// 正则筛选地址栏
let reg = new RegExp("(^|&|/?|//)" + name + "=([^&]*)(&|$)");
// 匹配目标参数
let result = url.substr(1).match(reg);
//返回参数值
return result ? decodeURIComponent(result[2]) : null;
}
微信小程序 扫码功能的实现
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 最初是被这本书吸引,是因为书的封面一个孩子坐在一片红色花丛中,画面极具中国风,看着这么热烈这封面,我想这...
- 一、市场加剧震荡,随时可能引发中期调整;大趋势还是在多头当中;月K如果没有意外,6月1日会占上20月均线; 二、注...