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


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 相关文章推荐
编写自己的jQuery插件简单实现代码
Apr 19 Javascript
理解JSON:3分钟课程
Oct 28 Javascript
JS解决ie6下png透明的方法实例
Aug 02 Javascript
Jquery获取元素的父容器对象示例代码
Feb 10 Javascript
JS实现黑客帝国文字下落效果
Sep 01 Javascript
bootstrap——bootstrapTable实现隐藏列的示例
Jan 14 Javascript
node.JS md5加密中文与php结果不一致的解决方法
May 05 Javascript
关于js中的鼠标事件总结
Jul 11 Javascript
vue实现的仿淘宝购物车功能详解
Jan 27 Javascript
通过javascript实现段落的收缩与展开
Jun 26 Javascript
JS制作简易计算器的实例代码
Jul 04 Javascript
小程序实现左滑删除的效果的实例代码
Oct 19 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
咖啡豆分级制度 咖啡豆等级分类 咖啡豆是按口感分类的吗?
2021/03/05 新手入门
php操作csv文件代码实例汇总
2014/09/22 PHP
php页面缓存方法小结
2015/01/10 PHP
Mac OS下配置PHP+MySql环境
2015/02/25 PHP
PHP针对字符串开头和结尾的判断方法
2016/07/11 PHP
jquery 得到当前页面高度和宽度的两个函数
2010/02/21 Javascript
js 获取子节点函数 (兼容FF与IE)
2010/04/18 Javascript
一些常用弹出窗口/拖放/异步文件上传等实用代码
2013/01/06 Javascript
js中function()使用方法
2013/12/24 Javascript
vue 2.0组件与v-model详解
2017/03/27 Javascript
文本溢出插件jquery.dotdotdot.js使用方法详解
2017/06/22 jQuery
Javascript中parseInt的正确使用方式
2018/10/17 Javascript
[01:09:01]完美世界DOTA2联赛循环赛 Magma vs PXG BO2第一场 10.28
2020/10/28 DOTA
在DigitalOcean的服务器上部署flaskblog应用
2015/12/19 Python
Python解析json文件相关知识学习
2016/03/01 Python
实例讲解Python设计模式编程之工厂方法模式的使用
2016/03/02 Python
Python多线程爬虫实战_爬取糗事百科段子的实例
2017/12/15 Python
python3实现公众号每日定时发送日报和图片
2018/02/24 Python
实时获取Python的print输出流方法
2019/01/07 Python
Python实现的旋转数组功能算法示例
2019/02/23 Python
Python数据可视化:饼状图的实例讲解
2019/12/07 Python
Python enumerate函数遍历数据对象组合过程解析
2019/12/11 Python
使用tensorflow实现矩阵分解方式
2020/02/07 Python
解决python调用自己文件函数/执行函数找不到包问题
2020/06/01 Python
size?德国官方网站:英国伦敦的球鞋精品店
2018/03/17 全球购物
时尚、社区、科技:SEVENSTORE
2019/04/26 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
CSMA/CD介质访问控制协议
2015/11/17 面试题
公务员转正鉴定材料
2014/02/11 职场文书
工程资料员岗位职责
2014/03/10 职场文书
房屋转让协议书范本
2014/04/11 职场文书
世界读书日的活动方案
2014/08/20 职场文书
单方离婚协议书范本2014
2014/10/28 职场文书
node.js使用express-fileupload中间件实现文件上传
2021/07/16 Javascript
DSP接收机前端设想
2022/04/05 无线电
SQLServer常见数学函数梳理总结
2022/08/05 MySQL