微信小程序将字符串生成二维码图片的操作方法


Posted in Javascript onJuly 17, 2018

最近接到这样一个需求,需要在小程序里将十几位随机字符串转换为二维码的形式展示。公众号中(另一终端)调用JSSDK扫一扫功能,去扫描小程序生成的二维码。得到字符串,然后进行接下来的逻辑处理。

下面记录的是小程序中生成二维码图片这一操作,用的是原文作者改版后的生成二维码工具weapp-qrcode.js(demo的众多文件中只需将util下的这个文件拷贝到自己项目中),可在原文地址里clone demo。

截图(copy原文)

微信小程序将字符串生成二维码图片的操作方法

使用

1、页面wxml中放置绘制二维码的canvas

加入点击改变二维码图片的按钮

<canvas class='canvas' canvas-id='canvas'></canvas>
<button bindtap='tapHandler' data-code='123abc456efg000'>转为二维码</button>  <!-- data-code为生成二维码所依据的字符串,这里将其写死了,实际应改为{{变量名}} -->
<button bindtap='tapHandler' data-code='555444333222111'>转为二维码</button>

2、页面js中引入

onload中初始化二维码 

定义按钮的事件处理函数

var QRCode = require('../../utils/weapp-qrcode.js');
var qrcode;
Page({
  onload: function(options){
    qrcode = new QRCode('canvas', {
      text: "code=0000000000000",
      width: 150,
      height: 150,
      colorDark: "#000000",
      colorLight: "#ffffff",
      correctLevel: QRCode.CorrectLevel.H,
    });
  },
  tapHandler: function(e){
    qrcode.makeCode(e.target.dataset.code); //用元素对应的code更新二维码
  }
});

参数说明

usingIn 为可选参数,详情清查卡在自定义组件使用时失效及解决思路 #1

text 为需要转化为二维码的字符串;

width 和 height为绘制出的二维码长宽,这里设置为跟canvas同样的长宽;

colorDark 和 colorLight 为二维码交替的两种颜色;

correctLevel 没有细看源码,命名上看应该是准确度;

如果需要再次生成二维码,调用 qrcode.makeCode('text you want convert')

总结

以上所述是小编给大家介绍的微信小程序将字符串生成二维码图片的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
window.location.href = window.location.href 跳转无反应 a超链接onclick事件写法
Aug 21 Javascript
js实现正方形颜色从下往上升的效果
Aug 04 Javascript
node.js中使用socket.io的方法
Dec 15 Javascript
微信支付如何实现内置浏览器的H5页面支付
Sep 25 Javascript
修改js confirm alert 提示框文字的简单实例
Jun 10 Javascript
JS仿hao123导航页面图片轮播效果
Sep 01 Javascript
vue.js开发环境搭建教程
May 04 Javascript
利用nvm管理多个版本的node.js与npm详解
Nov 02 Javascript
Bootstrap实现可折叠分组侧边导航菜单
Mar 07 Javascript
js中document.write和document.writeln的区别
Mar 11 Javascript
webpack4之如何编写loader的方法步骤
Jun 06 Javascript
JS实现滑动插件
Jan 15 Javascript
使用Vue实现图片上传的三种方式
Jul 17 #Javascript
vue的token刷新处理的方法
Jul 17 #Javascript
vue 权限认证token的实现方法
Jul 17 #Javascript
vue 实现axios拦截、页面跳转和token 验证
Jul 17 #Javascript
详解webpack import()动态加载模块踩坑
Jul 17 #Javascript
vue-router中的hash和history两种模式的区别
Jul 17 #Javascript
JS使用tween.js动画库实现轮播图并且有切换功能
Jul 17 #Javascript
You might like
php 显示指定路径下的图片
2009/10/29 PHP
合并ThinkPHP配置文件以消除代码冗余的实现方法
2014/07/22 PHP
laravel 使用auth编写登录的方法
2019/09/30 PHP
JQuery 获得绝对,相对位置的坐标方法
2010/02/09 Javascript
Extjs入门之动态加载树代码
2010/04/09 Javascript
鼠标滑上去后图片放大浮出效果的js代码
2011/05/28 Javascript
javascript真的不难-回顾一下基础知识
2013/01/15 Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
2013/12/12 Javascript
javaScript如何生成xmlhttp
2013/12/16 Javascript
JavaScript 常见安全漏洞和自动化检测技术
2015/08/21 Javascript
全面解析Bootstrap排版使用方法(文字样式)
2015/11/30 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
node.js 动态执行脚本
2016/06/02 Javascript
分享javascript实现的冒泡排序代码并优化
2016/06/05 Javascript
JS设置CSS样式的方式汇总
2017/01/21 Javascript
JS获得一个对象的所有属性和方法实例
2017/02/21 Javascript
浅谈原生JS中的延迟脚本和异步脚本
2017/07/12 Javascript
JavaScript中一些特殊的字符运算
2017/08/17 Javascript
值得收藏的八个常用的js正则表达式
2018/10/19 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
jquery实现聊天机器人
2020/02/08 jQuery
js实现拾色器插件(ColorPicker)
2020/05/21 Javascript
JS前端基于canvas给图片添加水印
2020/11/11 Javascript
Python 时间操作例子和时间格式化参数小结
2014/04/24 Python
python使用PIL缩放网络图片并保存的方法
2015/04/24 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
python排序函数sort()与sorted()的区别
2018/09/18 Python
十分钟搞定pandas(入门教程)
2019/06/21 Python
Currentbody法国:健康与美容高科技产品
2020/08/16 全球购物
交通事故赔偿协议书范本
2014/04/15 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
小学教师师德师风自我评价
2015/03/04 职场文书
就业导师推荐信范文
2015/03/27 职场文书
初中数学教学随笔
2015/08/15 职场文书
靠谱准确的求职信
2019/04/02 职场文书
Python Django ORM连表正反操作技巧
2021/06/13 Python