vue使用微信扫一扫功能的实现代码


Posted in Javascript onApril 11, 2020

第一步: 安装weixin-js-sdk 和 jquery 包 npm install weixin-js-sdk jquery

第二部: 配置wx.config (配置都是后端返回来的,菜鸟前端只需要按需传值过去就可)

代码如下

import wx from “weixin-js-sdk”;
import $ from “jquery”;
goSao() {

 //这里【url参数一定是去参的本网址】,请求后端接口换取signature
 //(兼容安卓和ios)
 let url = "传值";
 let ua = navigator.userAgent.toLowerCase();
 if (/iphone|ipad|ipod/.test(ua)) {
  this.newUrl = window.location.href.split("#")[0];
 } else if (/android/.test(ua)) {
  this.newUrl = window.location.href;
 }
 //传值为了去掉#
 
 $.get(`后台需要的路径=${this.newUrl}`,
  function(response) {
   wx.config({
    // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    debug: false,
    // 必填,公众号的唯一标识
    appId: response.data.appId,
    // 必填,生成签名的时间戳
    timestamp: response.data.timestamp,
    // 必填,生成签名的随机串
    nonceStr: response.data.nonceStr,
    // 必填,签名
    signature: response.data.signature,
    // 必填,需要使用的JS接口列表,所有JS接口列表
    jsApiList: ["scanQRCode"]
   });
   console.log(response)
  }
 );
 wx.error(function(res) {
  alert("出错了:" + res.errMsg); //这个地方的好处就是wx.config配置错误,会弹出窗口哪里错误,然后根据微信文档查询即可。
 });
 let _t = this
  wx.ready(function () {
    wx.checkJsApi({
      jsApiList: ['scanQRCode'],
      success: function (res) {

      }
    });
    wx.scanQRCode({
      needResult: 1, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果,
      scanType: ["qrCode"], // 可以指定扫二维码还是一维码,默认二者都有
      success: async (res)=>{
       var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果
      alert(result )
      }
    });
  });
},

已测,可以使用

注:只能微信浏览器使用,其他浏览器不可

总结

到此这篇关于vue使用微信扫一扫功能的实现代码的文章就介绍到这了,更多相关vue 微信扫一扫内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
jscript之Read an Excel Spreadsheet
Jun 13 Javascript
javascript模拟地球旋转效果代码实例
Dec 02 Javascript
js AppendChild与insertBefore用法详细对比
Dec 16 Javascript
js 数组操作之pop,push,unshift,splice,shift
Jan 29 Javascript
JQuery实现的按钮倒计时效果
Dec 23 Javascript
jquery.multiselect多选下拉框实现代码
Nov 11 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
Dec 28 Javascript
JS前端开发判断是否是手机端并跳转操作(小结)
Feb 05 Javascript
基于vue实现分页/翻页组件paginator示例
Mar 09 Javascript
bootstrapvalidator之API学习教程
Jun 29 Javascript
BootStrap入门学习第一篇
Aug 28 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
Apr 11 Javascript
Vue 中 template 有且只能一个 root的原因解析(源码分析)
Apr 11 #Javascript
vue搜索页开发实例代码详解(热门搜索,历史搜索,淘宝接口演示)
Apr 11 #Javascript
JavaScript实现轮播图特效
Apr 10 #Javascript
JavaScript实现图片伪异步上传过程解析
Apr 10 #Javascript
Vue实现Layui的集成方法步骤
Apr 10 #Javascript
如何基于layui的laytpl实现数据绑定的示例代码
Apr 10 #Javascript
vue-drag-chart 拖动/缩放图表组件的实例代码
Apr 10 #Javascript
You might like
PHP设计模式 注册表模式
2012/02/05 PHP
分享自定义的几个PHP功能函数
2015/04/15 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
php实现简易聊天室应用代码
2015/09/23 PHP
浅谈php中urlencode与rawurlencode的区别
2016/09/05 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
2018/12/08 PHP
用js实现的模拟jquery的animate自定义动画(2.5K)
2010/07/20 Javascript
Java 正则表达式学习总结和一些小例子
2012/09/13 Javascript
Select标签下拉列表二级联动级联实例代码
2014/02/07 Javascript
jQuery setTimeout传递字符串参数报错的解决方法
2014/06/09 Javascript
JavaScript实现列出数组中最长的连续数
2014/12/29 Javascript
jQuery实现设置、移除文本框默认值功能
2015/01/13 Javascript
javascript面向对象之访问对象属性的两种方式分析
2015/01/13 Javascript
解决jQuery ajax请求在IE6中莫名中断的问题
2016/06/20 Javascript
BootStrapTable 单选及取值的实现方法
2017/01/10 Javascript
NodeJS配置HTTPS服务实例分享
2017/02/19 NodeJs
javascript图片预览和上传(兼容IE)
2017/03/15 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
深入浅析Vue.js 中的 v-for 列表渲染指令
2018/11/19 Javascript
jQuery事件多次绑定与解绑问题实例分析
2019/02/19 jQuery
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
python单线程实现多个定时器示例
2014/03/30 Python
Python3实现Web网页图片下载
2016/01/28 Python
Python基于TCP实现会聊天的小机器人功能示例
2018/04/09 Python
pandas中apply和transform方法的性能比较及区别介绍
2018/10/30 Python
python退出循环的方法
2020/06/18 Python
HTML5之消息通知的使用(Web Notification)
2018/10/30 HTML / CSS
施华洛世奇英国官网:SWAROVSKI英国
2017/03/13 全球购物
英国电器零售商:PRC Direct
2018/06/21 全球购物
财务会计专业毕业生自荐信
2013/10/19 职场文书
关于中国梦的演讲稿
2014/04/23 职场文书
设计专业毕业生求职信
2014/06/25 职场文书
关于群众路线的心得体会
2014/11/05 职场文书
维稳承诺书
2015/01/20 职场文书
离婚协议书样本
2015/01/26 职场文书
泰山导游词
2015/02/02 职场文书