直播小程序源码,小程序生成二维码 (兼容H5、微信小程序)
直播小程序源码,小程序生成二维码 (兼容H5、微信小程序)
1、<canvas type="2d" style="width: 127px; height: 127px;position: fixed;top: -1000px;" id="myQrcode"></canvas>
注意:不能再v-if内,否则会导致找不到该节点
2、import drawQrcode from '@/common/qrcodeJs/qrcode.js';
注意:也可以npm安装 npm install weapp-qrcode-canvas-2d --save
3、这个是项目中实践使用的,没有使用叠加图片的
1 | <br> /**<br>* 生成二维码(没有使用叠加图片)<br>* text - 码值<br>* */ <br>handleMakeQrcode(text) {<br> return new Promise((resolve, reject) => {<br> const query = uni.createSelectorQuery()<br> query.select( '#myQrcode' ).fields({<br> node: true,<br> size: true<br> }). exec ((res) => {<br> // 获取node节点实例,目前仅微信,快手,京东小程序支持;<br> // #ifdef MP-WEIXIN || MP-KUAISHOU<br> let canvas = res[0].node<br> // #endif<br> // 调用方法drawQrcode生成二维码<br> drawQrcode({<br> // #ifdef MP-WEIXIN || MP-KUAISHOU<br> canvas: canvas,<br> // #endif<br> canvasId: 'myQrcode',<br> width: 127,<br> padding: 0,<br> background: '#ffffff',<br> foreground: '#000000',<br> text: text,<br> })<br> // 获取临时路径<br> uni.canvasToTempFilePath({<br> canvasId: 'myQrcode',<br> // #ifdef MP-WEIXIN || MP-KUAISHOU<br> canvas: canvas,<br> // #endif<br> x: 0,<br> y: 0,<br> width: 127,<br> height: 127,<br> destWidth: 127,<br> destHeight: 127,<br> success(res) {<br> resolve(res.tempFilePath); // 临时路径<br> },<br> fail(res) {<br> console.error(res);<br> reject();<br> }<br> })<br> });<br> })<br>}<br>/*<br>* 文档中示例 - 有叠加图片的(在二维码中加logo)<br>*/<br>const query = wx.createSelectorQuery()<br> <br>query.select('#myQrcode')<br> .fields({<br> node: true,<br> size: true<br> })<br> .exec(async (res) => {<br> var canvas = res[0].node<br> <br> var img = canvas.createImage();<br> img.src = "/image/logo.png"<br> <br> img.onload = function () {<br> // img.onload完成后才能调用 drawQrcode方法<br> <br> var options = {<br> canvas: canvas,<br> canvasId: 'myQrcode',<br> width: 260,<br> padding: 30,<br> paddingColor: '#fff',<br> background: '#fff',<br> foreground: '#000000',<br> text: 'https://gitee.com/WeiDoctor/weapp-qrcode-canvas-2d',<br> image: {<br> imageResource: img,<br> width: 80, // 建议不要设置过大,以免影响扫码<br> height: 80 // 建议不要设置过大,以免影响扫码<br> round: true // Logo图片是否为圆形<br> }<br> }<br> <br> drawQrcode(options)<br> <br> // 获取临时路径(得到之后,想干嘛就干嘛了)<br> wx.canvasToTempFilePath({<br> x: 0,<br> y: 0,<br> width: 260,<br> height: 260,<br> destWidth: 600,<br> destHeight: 600,<br> canvasId: 'myQrcode',<br> canvas: canvas,<br> success(res) {<br> console.log('二维码临时路径为:', res.tempFilePath)<br> },<br> fail(res) {<br> console.error(res)<br> }<br> })<br> <br> };<br> }) |
以上就是 直播小程序源码,小程序生成二维码 (兼容H5、微信小程序),更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现