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 相关文章推荐
用javascript对一个json数组深度赋值示例
Jul 27 Javascript
javascript禁止超链接跳转的方法
Feb 02 Javascript
基于javascript实现简单的抽奖系统
Apr 15 Javascript
jQuery插件jquery.kxbdmarquee.js实现无缝滚动效果
Feb 15 Javascript
Bootstrap的Carousel配合dropload.js实现移动端滑动切换图片
Mar 10 Javascript
Angularjs中数据绑定的实例详解
Aug 25 Javascript
分析JS中this引发的bug
Dec 12 Javascript
React如何避免重渲染
Apr 10 Javascript
小程序如何使用分包加载的实现方法
May 22 Javascript
Vue登录主页动态背景短视频制作
Sep 21 Javascript
JS校验与最终登陆界面功能完整示例
Jan 13 Javascript
js实现动态时钟
Mar 12 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编程之高级技巧——利用Mysql函数
2006/10/09 PHP
PHP入门学习笔记之一
2010/10/12 PHP
解决Codeigniter不能上传rar和zip压缩包问题
2014/03/07 PHP
采用memcache在web集群中实现session的同步会话
2014/07/05 PHP
非集成环境的php运行环境(Apache配置、Mysql)搭建安装图文教程
2016/04/12 PHP
PHP设计模式之工厂模式与单例模式
2016/09/28 PHP
PHP使用mysqli操作MySQL数据库的简单方法
2017/02/04 PHP
php使用include 和require引入文件的区别
2017/02/16 PHP
php使用crypt()函数进行加密
2017/06/08 PHP
PHP实现的折半查找算法示例
2017/12/19 PHP
CI框架网页缓存简单用法分析
2018/12/26 PHP
ASP.NET jQuery 实例14 在ASP.NET form中校验时间范围
2012/02/03 Javascript
侧栏跟随滚动的简单实现代码
2013/03/18 Javascript
jQuery插件开发详细教程
2014/06/06 Javascript
Javascript进制转换实例分析
2015/05/14 Javascript
JS正则表达式封装与使用操作示例
2019/05/15 Javascript
Vue之beforeEach非登录不能访问的实现(代码亲测)
2019/07/18 Javascript
js简单实现自动生成表格功能示例
2020/06/02 Javascript
微信小程序整个页面的自动适应布局的实现
2020/07/12 Javascript
Javascript异步流程控制之串行执行详解
2020/09/27 Javascript
[01:04:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第二场 1月31日
2021/03/11 DOTA
Python使用面向对象方式创建线程实现12306售票系统
2015/12/24 Python
Python生成数字图片代码分享
2017/10/31 Python
Python虚拟环境的原理及使用详解
2019/07/02 Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
2019/11/05 Python
django日志默认打印request请求信息的方法示例
2020/05/17 Python
django和flask哪个值得研究学习
2020/07/31 Python
Python正则re模块使用步骤及原理解析
2020/08/18 Python
python 基于Apscheduler实现定时任务
2020/12/15 Python
python利用xpath爬取网上数据并存储到django模型中
2021/02/26 Python
加拿大著名的奢侈品购物网站:SSENSE(支持中文)
2020/06/25 全球购物
班主任对学生的评语
2014/04/26 职场文书
2014年防汛工作总结
2014/12/08 职场文书
2015迎新晚会开场白
2015/05/29 职场文书
赤壁观后感(2)
2015/06/15 职场文书
九大龙王魂骨,山龙王留下躯干骨,榜首死的最憋屈(被捏碎)
2022/03/18 国漫