小程序生成分享二维码 wxqrcode

tech2022-09-20  71

(一)先到GitHub把qrcode.js的代码copy下来

其他脚本可能会有地址长度限制的问题,这个亲测有效

https://github.com/demi520/wxapp-qrcode

(二)在项目js文件中引入

let QR = require("xxxx/qrcode.js") // require方式 import QR from 'xxxx/qrcode.js' // es6的方式

(三)创建canvas节点,以及设置canvas-id

*注:canvas节点可以用visibility控制不显示,但一定要存在这个节点,二维码可以用canvas绘制,也可以获取路径之后,赋值给image标签的src属性

<canvas style="width: 200px;height: 200px;" canvas-id="mycanvas" />

(四)定义绘制二维码的方法

methods: { createQrCode: function(content, canvasId, cavW, cavH) { //调用插件中的draw方法,绘制二维码图片 //this.canvasToTempImage 为绘制完成的回调函数,可根据自己的业务添加 QR.api.draw(content, canvasId, cavW, cavH, this, this.canvasToTempImage); }, //获取临时缓存图片路径,存入data中 canvasToTempImage: function(canvasId) { wx.canvasToTempFilePath({ canvasId, // 这里canvasId即之前创建的canvas-id success: (res) => { let tempFilePath = res.tempFilePath; // 这里可以获取到生成二维码的图片地址 console.log(tempFilePath); }, fail: (res) => { console.log(res); } }); } },

(五)在onload方法中调用绘制二维码的方法

onLoad(options) { this.pageDate = JSON.parse(options.data) this.applicationType = this.pageDate.type this.createQrCode( 'https://www.baidu.com/', 'mycanvas', 200, 200) },

(六)效果图

 

 

 

最新回复(0)