直播小程序源码,小程序生成二维码 (兼容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、微信小程序),更多内容欢迎关注之后的文章 

 

posted @   云豹科技-苏凌霄  阅读(260)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示